Primi passi con csvkit

Elaborazione dei dati in Shell

Susan Sun

Data Person

Cos’è csvkit?

csvkit:

  • è una suite di strumenti da riga di comando
  • è sviluppato in Python da Wireservice
  • offre funzioni di elaborazione e pulizia dati su file CSV
  • ha capacità comparabili a Python, R e SQL
  • documentazione: https://csvkit.readthedocs.io/en/latest/
Elaborazione dei dati in Shell

Installazione di csvkit

Installa csvkit con il gestore pacchetti Python pip:

pip install csvkit

Aggiorna csvkit all’ultima versione:

pip install --upgrade csvkit

Istruzioni complete:

https://csvkit.readthedocs.io/en/latest/tutorial.html.

Elaborazione dei dati in Shell

Consultare il manuale di csvkit

Elaborazione dei dati in Shell

in2csv: convertire file in CSV

Documentazione web:

https://csvkit.readthedocs.io/en/latest/scripts/in2csv.html

Documentazione da riga di comando:

in2csv --help

in2csv -h
usage: in2csv [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
              [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-L LOCALE]
              [-S] [--blanks] [--date-format DATE_FORMAT]
              [--datetime-format DATETIME_FORMAT] [-H] [-K SKIP_LINES] [-v]
Elaborazione dei dati in Shell

in2csv: convertire file in CSV

Sintassi:

in2csv SpotifyData.xlsx > SpotifyData.csv

Stampa il primo foglio di Excel in console e non salva

in2csv SpotifyData.xlsx

> reindirizza l’output e lo salva come nuovo file SpotifyData.csv

> SpotifyData.csv
Elaborazione dei dati in Shell

in2csv: convertire file in CSV

Usa l’opzione --names o -n per stampare tutti i nomi dei fogli in SpotifyData.xlsx.

in2csv -n SpotifyData.xlsx
Worksheet1_Popularity
Worksheet2_MusicAttributes

Usa l’opzione --sheet seguita dal foglio "Worksheet1_Popularity" da convertire.

in2csv SpotifyData.xlsx --sheet "Worksheet1_Popularity" > Spotify_Popularity.csv
Elaborazione dei dati in Shell

in2csv: convertire file in CSV

in2csv non stampa log in console.

in2csv SpotifyData.xlsx --sheet "Worksheet1_Popularity" > Spotify_Popularity.csv

Controllo veloce:

ls
SpotifyData.xlsx  Spotify_Popularity.csv  backup  bin
Elaborazione dei dati in Shell

csvlook: anteprima dati da riga di comando

csvlook: mostra un CSV in console in un formato a larghezza fissa compatibile con Markdown

Documentazione:

csvlook -h
usage: csvlook [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
               [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-L LOCALE]
               [-S] [--blanks] [--date-format DATE_FORMAT]
Elaborazione dei dati in Shell

csvlook: anteprima dati da riga di comando

Sintassi:

csvlook Spotify_Popularity.csv
| track_id               | popularity |
| ---------------------- | ---------- |
| 118GQ70Sp6pMqn6w1oKuki |          7 |
| 6S7cr72a7a8RVAXzDCRj6m |          7 |
| 7h2qWpMJzIVtiP30E8VDW4 |          7 |
| 3KVQFxJ5CWOcbxdpPYdi4o |          7 |
| 0JjNrI1xmsTfhaiU1R6OVc |          7 |
| 3HjTcZt29JUHg5m60QhlMw |          7 |
Elaborazione dei dati in Shell

csvstat: statistiche descrittive sui CSV

csvstat: stampa statistiche descrittive su tutte le colonne di un CSV (es. media, mediana, conteggi dei valori unici)

Documentazione:

csvstat -h
usage: csvstat [-h] [-d DELIMITER] [-t] [-q QUOTECHAR] [-u {0,1,2,3}] [-b]
               [-p ESCAPECHAR] [-z FIELD_SIZE_LIMIT] [-e ENCODING] [-S] [-H]
               [-K SKIP_LINES] [-v] [-l] [--zero] [-V] [--csv] [-n]
Elaborazione dei dati in Shell

csvstat: statistiche descrittive sui CSV

Sintassi:

csvstat Spotify_Popularity.csv
  1. "track_id"

        Type of data:          Text
        Contains null values:  False
        Unique values:         24
        Longest value:         22 characters
        Most common values:    118GQ70Sp6pMqn6w1oKuki (1x)
                               6S7cr72a7a8RVAXzDCRj6m (1x)
Elaborazione dei dati in Shell

Proviamo un po’ di csvkit!

Elaborazione dei dati in Shell

Preparing Video For Download...