Come leggere un file csv da una stringa in pandas dataframe


È possibile utilizzare la seguente sintassi di base per leggere un file CSV da una stringa in un DataFrame panda:

 import pandas as pd
import io   

df = pd. read_csv ( io.StringIO (some_string), sep=" , ")

Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.

Esempio 1: leggere un file CSV da una stringa con virgole come separatori

Il codice seguente mostra come leggere un file CSV da una stringa (con virgole come separatori) in un DataFrame panda:

 import pandas as pd
import io   

some_string="""team,points,rebounds
A,22,10
B,14.9
C,29.6
D,30.2
E,22.9
F,31.10"""

#read CSV string into pandas DataFrame
df = pd. read_csv ( io.StringIO (some_string), sep=" , ")

#view resulting DataFrame
print (df)

  team points rebounds
0 to 22 10
1 B 14 9
2 C 29 6
3 D 30 2
4 E 22 9
5 F 31 10

Il DataFrame panda risultante contiene i valori della stringa CSV.

Esempio 2: leggere un file CSV da una stringa con un punto e virgola come separatore

Il codice seguente mostra come leggere un file CSV da una stringa (con punto e virgola come separatori) in un DataFrame panda:

 import pandas as pd
import io   

some_string="""team;points;rebounds
A;22;10
B;14;9
C;29;6
D;30;2
E;22;9
F;31;10"""

#read CSV string into pandas DataFrame
df = pd. read_csv ( io.StringIO (some_string), sep=" ; ")

#view resulting DataFrame
print (df)

  team points rebounds
0 to 22 10
1 B 14 9
2 C 29 6
3 D 30 2
4 E 22 9
5 F 31 10

Il DataFrame panda risultante contiene i valori della stringa CSV.

Esempio 3: leggere un file CSV da una stringa senza intestazione

Il codice seguente mostra come leggere un file CSV da una stringa (senza una riga di intestazione) in un DataFrame panda:

 import pandas as pd
import io   

some_string="""A;22;10
B;14;9
C;29;6
D;30;2
E;22;9
F;31;10"""

#read CSV string into pandas DataFrame
df = pd. read_csv (io. StringIO (some_string), sep=" ; ", header= None )

#view resulting DataFrame
print (df)

   0 1 2
0 to 22 10
1 B 14 9
2 C 29 6
3 D 30 2
4 E 22 9
5 F 31 10

Utilizzando l’argomento header=None , abbiamo detto ai panda di non utilizzare la prima riga come riga di intestazione.

Per impostazione predefinita, panda utilizza un intervallo di valori numerici (0, 1, 2) come nomi di colonna per DataFrame.

Nota : puoi trovare la documentazione completa della funzione panda read_csv() qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in Python:

Panda: come saltare le righe durante la lettura di un file CSV
Panda: come aggiungere dati a un file CSV esistente
Panda: come leggere un file CSV senza intestazione
Panda: imposta i nomi delle colonne durante l’importazione di un file CSV

Aggiungi un commento

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