Python CSV Skip Waster Row

Python CSV Skip Waster Row
In questo articolo, impareremo come possiamo rimuovere l'intestazione dei dati dei file CSV durante la lettura del CSV stesso perché a volte non abbiamo bisogno dell'intestazione dei dati dei file CSV. Quindi impareremo questi quattro metodi, che sono riportati di seguito:
  1. Utilizzando il metodo Next ()
  2. Usa il metodo DicTreader ()
  3. Pandas salta in base a un numero di riga specifico
  4. Pandas Skiprows in base a una posizione dell'indice

Spieghiamo in dettaglio ciascuno dei metodi di cui sopra.

Metodo 1: utilizzando il metodo Next ()

In questo metodo, useremo il metodo Next () e vedremo come questo metodo scarterà la riga di intestazione prima di stampare tutti gli altri dati CSV.

File CSV: Il file CSV seguente (test.CSV) Useremo per questo blog.

Mese, 1958.1959.1960
Gennaio, 340.360.417
Febbraio, 318.342.391
Mar, 362.406.419
Apr, 348.396.461
Gennaio, 340.360.417
Febbraio, 318.342.391 CSV di importazione
con aperto ("Test.csv "," r ") come record:
# Stiamo creando un oggetto del lettore CSV
csvreader_object = csv.lettore (record)
# La riga salterà la prima riga del file CSV (riga di intestazione)
Next (csvreader_object)
# Ora stiamo stampando tutte le righe tranne la prima riga del CSV
per la riga in csvreader_object:
Stampa (riga)

Produzione:

['Jan', '340', '360', '417']
['Feb', '318', '342', '391']
['Mar', '362', '406', '419']
['Apr', '348', '396', '461']
['Jan', '340', '360', '417']
['Feb', '318', '342', '391']

Riga 1: importiamo il modulo CSV.

Riga 3 -7: apriamo il test.File CSV in modalità di lettura ('R') come record, quindi creiamo un oggetto del CSV.Metodo Reader (). Il metodo successivo (), quando lo chiamiamo, scarta automaticamente la prima riga dall'oggetto CSV Reader e il resto dei dati che possiamo usare in quanto abbiamo bisogno.

Righe 10-11: Ora stiamo ripetendo l'oggetto CSV Reader e stampando ogni riga. L'output sopra mostra che ora non esiste una riga di intestazione.

Metodo 2: utilizzando il metodo DicTreader ()

Ora, vedremo come possiamo leggere il CSV come formato del dizionario. Ma dopo aver letto il file CSV come formato diretto, stamperemo solo il valore, non la chiave, che risolverà il nostro problema di stampare tutti i dati senza la riga di intestazione. Stiamo usando lo stesso test.File CSV come abbiamo usato prima. Di seguito è riportato un esempio di questo metodo:

Importa CSV
con aperto ("Test.csv "," r ") come record:
# Stiamo creando un oggetto del lettore CSV
csvreader_object = csv.DicTreader (Record)
# La riga salterà la prima riga del file CSV (riga di intestazione)
# perché funziona come un dict e stiamo stampando solo valori non chiavi
per la riga in csvreader_object:
print (riga ["mese"], riga ["1958"], riga ["1959"], riga ["1960"])

Produzione:

340 gennaio 360 417
318 febbraio 342 391
Mar 362 406 419
348 aprile 396 461
340 gennaio 360 417
318 febbraio 342 391

Riga 1: importiamo il modulo CSV.

Riga 3 -5: apriamo il test.File CSV in modalità di lettura ('R') come record, quindi creiamo un oggetto del CSV.Metodo DicTreader ().

Righe 8-9: Ora stiamo iterando l'oggetto CSV DicTreader e stampando ogni riga. Ma questa riga scarta automaticamente la prima riga dall'oggetto CSV Reader perché DicTreader converte ogni riga in un modulo Dict (chiave e valore). Quando stampiamo solo valore, non chiave, che mostra solo i dati, non il k, v, che era il nostro obiettivo principale.

Metodo 3: utilizzando gli attributi Panda Read_CSV Skiprows

In questo metodo, utilizzeremo l'attributo PANDAS read_csv. Nei Skiprows, menzioneremo il numero di riga di intestazione, che è ovviamente 1, quindi definiamo il valore degli skiprows come 1 come mostrato nel programma seguente. In questo modo, possiamo ignorare la riga di intestazione dal CSV mentre leggiamo i dati.

Importa panda come PD
skipheaderdf = pd.read_csv ('test.CSV ', skiprows = 1)
Stampa (skipheaderdf)

Produzione:

340 gennaio 360 417
0 febbraio 318 342 391
1 marzo 362 406 419
2 aprile 348 396 461
3 gennaio 340 360 417
4 febbraio 318 342 391

Linea 1: Importiamo la libreria Pandas come PD.

Linea 2: Leggiamo il file CSV usando il modulo PANDAS read_csv e in questo abbiamo menzionato Skiprows = 1, il che significa saltare la prima riga durante la lettura dei dati del file CSV.

Riga 4: Ora, stampiamo il risultato finale del telaio di dati mostrato nell'output sopra senza la riga dell'intestazione.

Metodo 4: usando i panda, rimuovere l'intestazione del CSV usando la posizione dell'indice

In questo metodo, utilizzeremo l'attributo PANDAS read_csv. Nei Skiprows, menzioneremo il numero di posizione dell'indice di intestazione, che è ovviamente 0, quindi definiamo il valore degli skiprows tra parentesi quadrate ([0]) come mostrato nel programma seguente. In questo modo, possiamo ignorare la riga di intestazione dal CSV mentre leggiamo i dati.

Importa panda come PD
skipheaderdf = pd.read_csv ('test.CSV ', skiprows = [0])
Stampa (skipheaderdf)

Produzione:

340 gennaio 360 417
0 febbraio 318 342 391
1 marzo 362 406 419
2 aprile 348 396 461
3 gennaio 340 360 417
4 febbraio 318 342 391

Linea 1: Importiamo la libreria Pandas come PD.

Linea 2: Leggiamo il file CSV usando il modulo PANDAS read_csv e in questo abbiamo menzionato Skiprows = [0], il che significa saltare la prima riga durante la lettura dei dati del file CSV.

Riga 4: Ora, stampiamo il risultato finale del telaio di dati mostrato nell'output sopra senza la riga dell'intestazione.

Conclusione:

Questo articolo ha visto quattro diversi metodi per saltare la riga dell'intestazione mentre si legge il file CSV. Tutti i metodi nell'articolo sopra sono perfettamente bene e vengono utilizzati dal programmatore Python per saltare l'intestazione del file CSV mentre si legge i dati CSV. Il metodo della libreria Pandas non solo ci consente di rimuovere l'intestazione dei dati del file CSV, ma può anche essere utilizzato per rimuovere altre righe se specifichiamo il loro numero o la posizione dell'indice su Skiprows. Quindi i Skiprows saranno in grado di rimuovere tutte quelle righe i cui numeri saranno assegnati loro. Quindi il modulo Pandas per saltare l'intestazione è il migliore da usare ed è anche molto conveniente per rimuovere le altre righe.

Sono disponibili anche gli altri metodi che utilizzano il dicttreader e il lettore, ma questi sono solo per le righe di intestazione, quindi se vogliamo rimuovere altre righe, dobbiamo scrivere anche qualche altro codice.