1列の隣接する値の差を新しい列に印刷する

1列の隣接する値の差を新しい列に印刷する

ファイルがあります。

A 1
A 2
A 4
A 6

この結果を得るために、2列の隣接する値(上と下)の違いを新しい列3に印刷したいと思います。

A 1
A 2 1
A 4 2
A 6 2

私は何かを見つけましたこのように、新しい列で印刷できませんでした。

awk 'NR>1{print $1-p} {p=$1}' file

ベストアンサー1

問題の特定のコードを修正してください。

$ awk 'NR>1{$3=$2-p} {p=$2} 1' file 
A 1
A 2 1
A 4 2
A 6 2
  • インデックスのフィールド1なので、$22番目の列の場合
    • $0完全な入力レコードを含みます。
  • 修正が完了したら、履歴を印刷する必要があります。デフォルトの動作は、$0if条件がtrueの場合に印刷することです。1通常このような場合に使用されます

おすすめ記事