计算列条目的差异

计算列条目的差异

我有一个文本文件:

1 100
2 80
3 70
4 64

现在我需要另一个文件,其中第一列等于上述内容,第二列应该是上述文件的连续值的差值,即:

1 20
2 10
3 6

使用 unix 命令完成此任务的最优雅/最简单的方法是什么?如果我不需要第二个文件,而只需要原始文件中的第三列具有所需的差异,那么会发生什么变化。

多谢!

答案1

用于计算awk比较合适

awk 'NR!=1{print a,b-$2};{a=$1;b=$2}'

如果您想要第三列有差异,只需添加它:

awk 'NR!=1{print a,b,b-$2};{a=$1;b=$2}'

相关内容