通过连接其他列中的值将列添加到表中

通过连接其他列中的值将列添加到表中

我有几个csv表如下:

YEAR;MONTH;DAY;RES1;RES2
1971;1;1;1206.1;627
1971;1;2;1303.4;654.3
1971;1;3;1248.9;662
1971;1;4;1188.8;666.8

由此,我想创建一个新列来连接 MONTH 和 DAY 列的值。因此输出应该如下所示:

YEAR;MONTH;DAY;RES1;RES2;MONTHDAY
1971;1;1;1206.1;627;11
1971;1;2;1303.4;654.3;12
1971;1;3;1248.9;662;13
1971;1;4;1188.8;666.8;14

答案1

由于您很高兴标题行也被合并,这很简单awk

awk -F';' -vOFS=';' '{ $(NF+1)=$2$3 ; print}'

基本上我们添加一个$(NF+1)由 组成的新字段$2$3,它合并这些字段。OFS=';'字段输出时带有;分隔符。

相关内容