Calcolare la trasposta di una matrice

Archiviato in: calcolo — olaolaonline 6 Giugno 2008 @ 11:51

Se abbiamo un file contenente dati in formati di matrice (numeri e stringhe)

1       2       3
4       5       6
7       8       9

possiamo ottenere la matrice trasposta, cioe’ lo scambio delle righe con le colonne, attraverso la sequenza di comandi

cat nomefile | awk ‘{for(j=1;j<=NF;j++){arr[j]=arr[j]"\t"$j}} END {for(i in arr) print arr[i]}’ | sed ’s/^\t//’

Il risultato sara’

1       4       7
2       5       8
3       6       9

Credits to jaduks