Carica i dati dal file di testo in Pandas
-
Metodo
read_csv()
per caricare i dati da un file di testo -
Metodo
read_fwf()
per caricare file di testo in formato larghezza su PandasDataFrame
-
Metodo
read_table()
per caricare il file di testo su PandasDataFrame
Introdurremo i metodi per caricare i dati da un file txt
con Pandas DataFrame
. Esamineremo anche le opzioni disponibili.
Per prima cosa, creeremo un semplice file di testo chiamato sample.txt
e aggiungeremo le seguenti righe al file:
45 apple orange banana mango
12 orange kiwi onion tomato
Dobbiamo salvarlo nella stessa directory da cui verrà eseguito lo script Python.
Metodo read_csv()
per caricare i dati da un file di testo
read_csv()
è il modo migliore per convertire il file text
in Pandas DataFrame
. Dobbiamo impostare header=None
poiché non abbiamo alcun header
nel file creato sopra. Possiamo anche impostare keep_default_na=False
all’interno del metodo se vogliamo sostituire i valori vuoti con NaN
.
Codici di esempio:
# python 3.x
import pandas as pd
df = pd.read_csv("sample.txt", sep=" ", header=None)
print(df)
Produzione:
0 1 2 3 4
0 45 apple orange banana mango
1 12 orange kiwi onion tomato
Abbiamo impostato sep=" "
perché un singolo spazio bianco separa i valori. Allo stesso modo, possiamo impostare sep=","
se leggiamo i dati da un file separato da virgole. Sostituisci gli spazi bianchi all’interno di sample.txt
con ,
e poi esegui il codice dopo aver sostituito sep=" "
con sep=","
.
Sample.txt
45,apple,orange,banana,mango
12,orange,kiwi,,tomato
Codice:
# python 3.x
import pandas as pd
df = pd.read_csv("sample.txt", sep=",", header=None)
print(df)
Produzione:
0 1 2 3 4
0 45 apple orange banana mango
1 12 orange kiwi NaN tomato
Metodo read_fwf()
per caricare file di testo in formato larghezza su Pandas DataFrame
read_fwf()
è molto utile per caricare un file di testo formattato in larghezza. Non possiamo usare sep
perché valori diversi possono avere delimitatori diversi. Considera il seguente file di testo:
Sample.txt
45 apple orange banana mango
12 orange kiwi onion tomato
In Sample.text
, delimiter
non è lo stesso per tutti i valori. Quindi read_fwf()
farà il lavoro qui.
Codice:
# python 3.x
import pandas as pd
df = pd.read_fwf("sample.txt", header=None)
print(df)
Produzione:
0 1 2 3 4
0 45 apple orange banana mango
1 12 orange kiwi onion tomato
Metodo read_table()
per caricare il file di testo su Pandas DataFrame
read_table()
è un altro approccio per caricare i dati dal file text
al DataFrame
di Pandas.
Sample.txt:
45 apple orange banana mango
12 orange kiwi onion tomato
Codice:
# python 3.x
import pandas as pd
df = pd.read_table("sample.txt", header=None, sep=" ")
print(df)
Produzione:
0 1 2 3 4
0 45 apple orange banana mango
1 12 orange kiwi onion tomato