我有一个数据文件,如下所示:
1 4.2
1 5.6
1 3.3
.
.
1 5.3
2 1.4
2 3.2
2 7.2
.
.
.
2 6.6
.
.
.
100 4.1
100 5.8
100 8.8
.
.
.
100 7.7
第一列中每个不同的值有100行,即我有10000行,有两列。我需要以这样的方式重新排列元素:
1 4.2 5.6 3.3 ... 5.3
2 1.4 3.2 7.2 ... 6.6
.
.
.
100 4.1 5.8 8.8 ... 7.7
也就是说,我需要一个100x101阵列。我正在考虑使用awk,但我被卡住了。有什么想法吗?
伊戈尔
答案 0 :(得分:1)
awk
可以提供帮助:
awk '{a[$1]=a[$1] " " $2} END{for(i in a) print i a[i]}' file
数组a
填充每行的第二个参数,并由第一个参数索引。读取文件时,awk
输出数组的内容。