我有一个输入数据文件:
anim gent
FZ543 1
FZ543 2
FZ543 3
FZ543 1
FZ547 4
FZ547 3
FZ547 3
FZ547 1
我想将这些数据转换为: -
anim gent
FZ543 1 2 3 1
FZ547 4 3 3 1
换句话说,我想将元素从垂直转换为水平。 我可以使用AWK Comand
感谢您的关注。
答案 0 :(得分:5)
awk 'NR==1{print} NR>1{a[$1]=a[$1]" "$2}END{for (i in a){print i " " a[i]}}' file
<强>输出强>
anim gent
FZ543 1 2 3 1
FZ547 4 3 3 1
答案 1 :(得分:3)
$ awk '$1 != prev{printf "%s%s",ors,$1; ors=ORS; ofs="\t"} {printf "%s%s",ofs,$2; ofs=OFS; prev=$1} END{print ""}' file
anim gent
FZ543 1 2 3 1
FZ547 4 3 3 1