データを複数の列に変換する必要があります。入力データ:
a1 n1
a2 n2
a3 n3
. .
. .
. .
an nn
a1 m1
a2 m2
a3 m3
. .
. .
. .
an mn
a1 x1
a2 x2
a3 x3
. .
. .
. .
an xn
a1 y1
a2 y2
a3 y3
. .
. .
. .
an yn
a1 z1
a2 z2
a3 z3
. .
. .
. .
an zn
上記のデータを複数の列に変換したいです。私の出力データは次のようになりたいです。
a1 n1 m1 x1 y1 z1
a2 n2 m2 x2 y2 z2
a3 n3 m3 x3 y3 z3
. . . . . .
. . . . . .
. . . . . .
an nn mn xn yn zn
この変換を助けてください。私はLinuxを使用しています。
ありがとうございます。
ベストアンサー1
以下は、awkで連想配列を使用する良い例です。
$ awk '{a[$1]=a[$1]" "$2} END {for (i in a) print i, a[i]}' q763033
a1 n1 m1 x1 y1 z1
a2 n2 m2 x2 y2 z2
a3 n3 m3 x3 y3 z3
an nn mn xn yn zn
入力ファイル q763033 は次のようになります。
$ cat q763033
a1 n1
a2 n2
a3 n3
an nn
a1 m1
a2 m2
a3 m3
an mn
a1 x1
a2 x2
a3 x3
an xn
a1 y1
a2 y2
a3 y3
an yn
a1 z1
a2 z2
a3 z3
an zn