Introducere în csvkit

Procesarea datelor în linia de comandă

Susan Sun

Data Person

Ce este csvkit?

csvkit:

  • este o suită de instrumente în linia de comandă
  • este dezvoltat în Python de Wireservice
  • oferă capabilități de procesare și curățare a datelor CSV
  • are capabilități comparabile cu Python, R și SQL
  • documentație: https://csvkit.readthedocs.io/en/latest/
Procesarea datelor în linia de comandă

Instalarea csvkit

Instalați csvkit folosind managerul de pachete Python pip:

pip install csvkit

Actualizați csvkit la cea mai recentă versiune:

pip install --upgrade csvkit

Instrucțiuni complete:

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

Procesarea datelor în linia de comandă

Consultarea manualului csvkit

Procesarea datelor în linia de comandă

in2csv: conversia fișierelor în CSV

Documentație web:

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

Documentație în linia de comandă:

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]
Procesarea datelor în linia de comandă

in2csv: conversia fișierelor în CSV

Sintaxă:

in2csv SpotifyData.xlsx > SpotifyData.csv

Afișează primul sheet din Excel în consolă, fără a salva

in2csv SpotifyData.xlsx

> redirecționează rezultatul și îl salvează ca fișier nou SpotifyData.csv

> SpotifyData.csv
Procesarea datelor în linia de comandă

in2csv: conversia fișierelor în CSV

Utilizați opțiunea --names sau -n pentru a afișa toate foile din SpotifyData.xlsx.

in2csv -n SpotifyData.xlsx
Worksheet1_Popularity
Worksheet2_MusicAttributes

Utilizați opțiunea --sheet urmată de foaia "Worksheet1_Popularity" pentru conversie.

in2csv SpotifyData.xlsx --sheet "Worksheet1_Popularity" > Spotify_Popularity.csv
Procesarea datelor în linia de comandă

in2csv: conversia fișierelor în CSV

in2csv nu afișează jurnale în consolă.

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

Verificare:

ls
SpotifyData.xlsx  Spotify_Popularity.csv  backup  bin
Procesarea datelor în linia de comandă

csvlook: previzualizarea datelor în linia de comandă

csvlook: redă un fișier CSV în consolă în format Markdown, cu lățime fixă

Documentație:

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]
Procesarea datelor în linia de comandă

csvlook: previzualizarea datelor în linia de comandă

Sintaxă:

csvlook Spotify_Popularity.csv
| track_id               | popularity |
| ---------------------- | ---------- |
| 118GQ70Sp6pMqn6w1oKuki |          7 |
| 6S7cr72a7a8RVAXzDCRj6m |          7 |
| 7h2qWpMJzIVtiP30E8VDW4 |          7 |
| 3KVQFxJ5CWOcbxdpPYdi4o |          7 |
| 0JjNrI1xmsTfhaiU1R6OVc |          7 |
| 3HjTcZt29JUHg5m60QhlMw |          7 |
Procesarea datelor în linia de comandă

csvstat: statistici descriptive pentru fișiere CSV

csvstat: afișează statistici descriptive pentru toate coloanele din CSV (ex. medie, mediană, număr de valori unice)

Documentație:

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]
Procesarea datelor în linia de comandă

csvstat: statistici descriptive pentru fișiere CSV

Sintaxă:

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)
Procesarea datelor în linia de comandă

Să exersăm cu csvkit!

Procesarea datelor în linia de comandă

Preparing Video For Download...