English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Beispiel für Pandas IO-Operationen
Die beiden Hauptfunktionen zur Lesung von Textdateien sind read_csv() und read_table(). Beide verwenden die gleiche Parsing-Code, um Tabellen-Daten intelligent in DataFrame-Objekte umzuwandeln:
pandas.read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None
pandas.read_csv(filepath_or_buffer, sep='\t', delimiter=None, header='infer', names=None, index_col=None, usecols=None
Speichern Sie diese Daten als temp.csv und bearbeiten Sie sie.
S.No,Name,Age,City,Salary 1,Tom,28,Toronto,20000 2,Lee,32,HongKong,3000 3,Steven,43,Bay Area,8300 4,Ram,38,Hyderabad,3900
read.csv liest Daten aus einer csv-Datei ein und erstellt ein DataFrame-Objekt.
import pandas as pd df = pd.read_csv("temp.csv") print df
Die Ergebnisse des Laufens sind wie folgt:
S.No Name Age City Salary 0 1 Tom 28 Toronto 20000 1 2 Lee 32 HongKong 3000 2 3 Steven 43 Bay Area 8300 3 4 Ram 38 Hyderabad 3900
Dies legt eine Spalte im csv-Datei fest, um die index_col für die benutzerdefinierte Indizes zu verwenden.
import pandas as pd df = pd.read_csv("temp.csv", index_col=['S.No']) print df
Die Ergebnisse des Laufens sind wie folgt:
S.No Name Age City Salary 1 Tom 28 Toronto 20000 2 Lee 32 HongKong 3000 3 Steven 43 Bay Area 8300 4 Ram 38 Hyderabad 3900
Der dtype der Spalte kann als dict übergeben werden.
import pandas as pd df = pd.read_csv("temp.csv", dtype={'Salary': np.float}64) print(df.dtypes)
Die Ergebnisse des Laufens sind wie folgt:
S.No int64 Name objekt Age int64 City objekt Salary float64 dtype: objekt
Standardmäßig ist der dtype der Salary-Spalte int, aber er wird als float angezeigt, da wir den Typ explizit umgewandelt haben. Daher sehen die Daten wie float aus.
Daher sieht die Daten wie float aus −
S.No Name Age City Salary 0 1 Tom 28 Toronto 20000.0 1 2 Lee 32 HongKong 3000.0 2 3 Steven 43 Bay Area 8300.0 3 4 Ram 38 Hyderabad 3900.0
Verwenden Sie den names-Parameter, um die Namen der Kopfzeilen zu spezifizieren.
import pandas as pd df=pd.read_csv("temp.csv", names=['a', 'b', 'c','d','e']) print df
Die Ergebnisse des Laufens sind wie folgt:
a b c d e 0 S.No Name Age City Salary 1 1 Tom 28 Toronto 20000 2 2 Lee 32 HongKong 3000 3 3 Steven 43 Bay Area 8300 4 4 Ram 38 Hyderabad 3900
Bitte beachten Sie, dass nach den Kopfzeilennamen benutzerdefinierte Namen hinzugefügt wurden, aber die Kopfzeilen im Datei noch nicht entfernt wurden. Jetzt verwenden wir den header-Parameter, um sie zu entfernen.
Wenn der Titel nicht in der ersten Zeile steht, wird die Zeilennummer an den Titel übergeben. Dies überspringt die vorherigen Zeilen.
import pandas as pd df=pd.read_csv("temp.csv",names=['a','b','c','d','e'],header=0) print df
Die Ergebnisse des Laufens sind wie folgt:
a b c d e 0 S.No Name Age City Salary 1 1 Tom 28 Toronto 20000 2 2 Lee 32 HongKong 3000 3 3 Steven 43 Bay Area 8300 4 4 Ram 38 Hyderabad 3900
skiprows überspringt angegebene Zeilen.
import pandas as pd df=pd.read_csv("temp.csv", skiprows=2) print df
Die Ergebnisse des Laufens sind wie folgt:
2 Lee 32 HongKong 3000 0 3 Steven 43 Bay Area 8300 1 4 Ram 38 Hyderabad 3900