Adicionando coluna a uma tabela concatenando valores de outras colunas

1

Eu tenho vários csv tabela como segue:

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

A partir disso, eu gostaria de criar uma nova coluna que concatene os valores das colunas MÊS e DIA. Portanto, a saída deve ser assim:

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
    
por steve 19.08.2016 / 17:25

1 resposta

5

Como você está feliz com a linha de cabeçalho também ser mesclada, isso é simples. awk

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

Basicamente, adicionamos um novo campo $(NF+1) , que consiste em $2$3 , que mescla esses campos. Com OFS=';' , os campos são emitidos com o separador ; .

    
por 19.08.2016 / 17:31

Tags