Join tra file testuali usando Miller
Come realizzare una JOIN tabellare tra file testuali usanso Miller.
A cura di
Totò Fiandaca
| issue
#60
| guida/e
Andrea Borruso
Caso d’uso: Partendo da due file di testo, con diverso numero di colonne, fare un join
tra il campo 3 del primo e 1 del secondo file mantenendo solo alcuni campi e non tutti, tenendo presente che il primo file è un CSV con intestazione e il secondo un TSV senza intestazione.
script
mlr --icsv --onidx --ofs "\t" cat layer.csv >layer_t.tsv
mlr --nidx --fs "\t" join -j 3 -r 1 --rp r -f out_regioni_xpath.tsv then cut -f 1,r2 layer_t.tsv >out.tsv
osservazioni
prima riga script
: trasforma il file CSV con intestazione in un file TSV senza intestazione;seconda riga
: mette in join i due file testuali usando, come colonna comune, la 3 del primo e 1 del secondo, infine conserva solo le colonne 1 e r2 del file di output (per maggiori dettagli leggere issue).
dati di esempio
Riferimenti utili
Ultima modifica 19/07/2020: close #50 (a1365d8)