Menyaring data dengan csvkit

Pemrosesan Data di Shell

Susan Sun

Data Person

Apa arti menyaring data?

Kita dapat membuat subset dari file data asli dengan:

  1. Menyaring data berdasarkan kolom
  2. Menyaring data berdasarkan baris

csvcut: menyaring data menggunakan nama kolom atau posisi

csvgrep: menyaring data berdasarkan nilai baris lewat kecocokan tepat, pola, atau regex

Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

csvcut: menyaring dan memangkas file CSV berdasarkan nama kolom atau posisi kolom

Dokumentasi:

csvcut -h
usage: csvcut [-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] [-n] [-c COLUMNS]
Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

Gunakan opsi --names atau -n untuk menampilkan semua nama kolom di Spotify_MusicAttributes.csv.

csvcut -n Spotify_MusicAttributes.csv
  1: track_id
  2: danceability
  3: duration_ms
Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

  1: track_id
  2: danceability
  3: duration_ms

Mengembalikan kolom pertama berdasarkan posisi:

csvcut -c 1 Spotify_MusicAttributes.csv
track_id
118GQ70Sp6pMqn6w1oKuki
6S7cr72a7a8RVAXzDCRj6m
Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

  1: track_id
  2: danceability
  3: duration_ms

Mengembalikan hanya kolom pertama berdasarkan nama:

csvcut -c "track_id" Spotify_MusicAttributes.csv
track_id
118GQ70Sp6pMqn6w1oKuki
6S7cr72a7a8RVAXzDCRj6m
Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

  1: track_id
  2: danceability
  3: duration_ms

Mengembalikan kolom kedua dan ketiga berdasarkan posisi:

csvcut -c 2,3 Spotify_MusicAttributes.csv
danceability,duration_ms
0.787,124016.0
0.777,128016.0
0.795999999999999,132742.0
Pemrosesan Data di Shell

csvcut: penyaringan data berdasarkan kolom

  1: track_id
  2: danceability
  3: duration_ms

Mengembalikan kolom kedua dan ketiga berdasarkan nama:

csvcut -c "danceability","duration_ms" Spotify_MusicAttributes.csv
danceability,duration_ms
0.787,124016.0
0.777,128016.0
0.795999999999999,132742.0
Pemrosesan Data di Shell

csvgrep: penyaringan data berdasarkan nilai baris

csvgrep:

  • menyaring berdasarkan baris dengan pencocokan tepat atau regex (fuzzy)
  • harus dipasangkan dengan salah satu opsi berikut:

-m: diikuti nilai baris yang persis

-r: diikuti pola regex

-f: diikuti path ke file

Dokumentasi:

csvgrep -h
Pemrosesan Data di Shell

csvgrep: penyaringan data berdasarkan nilai baris

Cari di Spotify_Popularity.csv di mana track_id = 5RCPsfzmEpTXMCTNk7wEfQ

csvgrep -c "track_id" -m 5RCPsfzmEpTXMCTNk7wEfQ Spotify_Popularity.csv
track_id,popularity
5RCPsfzmEpTXMCTNk7wEfQ,7.0
csvgrep -c 1 -m 5RCPsfzmEpTXMCTNk7wEfQ Spotify_Popularity.csv
track_id,popularity
5RCPsfzmEpTXMCTNk7wEfQ,7.0
Pemrosesan Data di Shell

Ayo lakukan penyaringan data dengan csvkit!

Pemrosesan Data di Shell

Preparing Video For Download...