La guida definitiva: come leggere file csv con panda


I file CSV (valori separati da virgole) sono uno dei modi più comuni per archiviare i dati.

Fortunatamente, la funzione read_csv() di panda ti consente di leggere facilmente file CSV in Python in quasi tutti i formati desiderati.

Questo tutorial spiega diversi modi per leggere i file CSV in Python utilizzando il seguente file CSV denominato “data.csv” :

 playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

Esempio 1: leggere il file CSV nel DataFrame di panda

Il codice seguente mostra come leggere il file CSV in un DataFrame panda:

 #import CSV file as DataFrame
df = pd. read_csv ('data.csv')

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Esempio 2: leggere colonne specifiche da un file CSV

Il codice seguente mostra come leggere solo le colonne etichettate “playerID” e “points” dal file CSV in un DataFrame panda:

 #import only specific columns from CSV file
df = pd. read_csv ('data.csv', usecols=[' playerID ',' points '])

#view DataFrame
df

	playerID points
0 1 26
1 2 19
2 3 24
3 4 22

Puoi anche specificare gli indici di colonna da leggere in un DataFrame panda:

 #import only specific columns from CSV file
df = pd. read_csv (' data.csv ', usecols=[ 0,1 ])

#view DataFrame
df

        playerID team
0 1 Lakers
1 2 Mavs
2 3 Bucks
3 4 Spurs

Esempio 3: specificare la riga di intestazione durante l’importazione di un file CSV

In alcuni casi, la riga di intestazione potrebbe non essere la prima riga in un file CSV.

Ad esempio, considera il seguente file CSV in cui la riga di intestazione appare effettivamente nella seconda riga:

 random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

Per leggere questo file CSV in un DataFrame panda, possiamo specificare header=1 come segue:

 #import from CSV file and specify that header starts on second row
df = pd. read_csv ('data.csv', header= 1 )

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Esempio 4: salta le righe durante l’importazione di un file CSV

Puoi anche saltare facilmente le righe durante l’importazione di un file CSV utilizzando l’argomento skiprows .

Ad esempio, il codice seguente mostra come ignorare la seconda riga durante l’importazione del file CSV:

 #import from CSV file and skip second row
df = pd. read_csv ('data.csv', skiprows=[ 1 ] )

#view DataFrame
df

        playerID team points
0 2 Mavs 19
1 3 Bucks 24
2 4 Spurs 22

E il codice seguente mostra come ignorare la seconda e la terza riga durante l’importazione del file CSV:

 #import from CSV file and skip second and third rows
df = pd. read_csv ('data.csv', skiprows=[ 1,2 ] )

#view DataFrame
df

        playerID team points
1 3 Bucks 24
2 4 Spurs 22

Esempio 5: leggere file CSV con un delimitatore personalizzato

A volte potresti avere un file CSV con un delimitatore diverso da una virgola.

Ad esempio, supponiamo che il nostro file CSV abbia un carattere di sottolineatura come delimitatore:

 playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22

Per leggere questo file CSV in Panda, possiamo usare l’argomento sep per specificare il delimitatore da utilizzare durante la lettura del file:

 #import from CSV file and specify delimiter to use
df = pd. read_csv ('data.csv', sep=' _ ')

#view DataFrame
df

	playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni dei panda:

Come leggere un file di testo con Pandas
Come leggere file Excel con Panda
Come leggere i file TSV con Panda
Come leggere le tabelle HTML con Pandas

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *