Converter coluna em formato de matriz usando o awk
Eu tenho um arquivo de dados em grade no formato de coluna como:
ifile.txt
x y value
20.5 20.5 -4.1
21.5 20.5 -6.2
22.5 20.5 0.0
20.5 21.5 1.2
21.5 21.5 4.3
22.5 21.5 6.0
20.5 22.5 7.0
21.5 22.5 10.4
22.5 22.5 16.7
Gostaria de convertê-lo para o formato matriz como:
ofile.txt
20.5 21.5 22.5
20.5 -4.1 1.2 7.0
21.5 -6.2 4.3 10.4
22.5 0.0 6.0 16.7
Onde top20.5 21.5 22.5
indique ye valores laterais indicam x e os valores internos indicam os valores correspondentes da grade.
Encontrei uma pergunta semelhante aquiConverta um arquivo de 3 colunas para o formato matriz mas o script não está funcionando no meu caso.
O script é
awk '{ h[$1,$2] = h[$2,$1] = $3 }
END {
for(i=1; i<=$1; i++) {
for(j=1; j<=$2; j++)
printf h[i,j] OFS
printf "\n"
}
}' ifile