Pandas lesen CSV in Python
CSV-Dateien sind durch Kommas getrennte Dateien. Um auf Daten aus der CSV-Datei zuzugreifen, benötigen wir eine Funktion read_csv() von Pandas, die Daten in Form des Datenrahmens abruft.
Syntax von read_csv()
Hier ist das Pandas lesen CSV Syntax mit seinen Parametern.
Syntax: pd.read_csv (filepath_or_buffer, sep=’ ,’ , header=’infer’, index_col=None, usecols=None, engine=None, skiprows=None, nrows=None)
Parameter:
- filepath_or_buffer : Speicherort der CSV-Datei. Es akzeptiert einen beliebigen Zeichenfolgenpfad oder eine beliebige URL der Datei.
- sep : Es steht für Trennzeichen, der Standardwert ist „,“.
- Header : Es akzeptiert int, eine Liste von int, Zeilennummern zur Verwendung als Spaltennamen und den Anfang der Daten. Wenn keine Namen übergeben werden, also header=None, dann wird die erste Spalte als 0, die zweite als 1 usw. angezeigt.
- usecols : Ruft nur ausgewählte Spalten aus der CSV-Datei ab.
- nrows : Anzahl der anzuzeigenden Zeilen aus dem Datensatz.
- index_col : Bei „Keine“ werden keine Indexnummern zusammen mit den Datensätzen angezeigt.
- Skiprows : Überspringt übergebene Zeilen im neuen Datenrahmen.
Lesen Sie die CSV-Datei mit Pandas read_csv
Bevor wir diese Funktion verwenden, müssen wir die importieren Pandas In der Bibliothek laden wir die CSV-Datei mit Pandas.
PYTHON3
# Import pandas> import> pandas as pd> # reading csv file> df> => pd.read_csv(> 'people.csv'> )> print> (df.head())> |
Ausgabe:
First Name Last Name Sex Email Date of birth Job Title 0 Shelby Terrell Male [email protected] 1945-10-26 Games developer 1 Phillip Summers Female [email protected] 1910-03-24 Phytotherapist 2 Kristine Travis Male [email protected] 1992-07-02 Homeopath 3 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 4 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon
Benutzen sep in read_csv()
In diesem Beispiel nehmen wir eine CSV-Datei und fügen dann einige Sonderzeichen hinzu, um zu sehen, wie das funktioniert sep Parameter funktioniert.
Python3
# sample = 'totalbill_tip, sex:smoker, day_time, size> # 16.99, 1.01:Female|No, Sun, Dinner, 2> # 10.34, 1.66, Male, No|Sun:Dinner, 3> # 21.01:3.5_Male, No:Sun, Dinner, 3> #23.68, 3.31, Male|No, Sun_Dinner, 2> # 24.59:3.61, Female_No, Sun, Dinner, 4> # 25.29, 4.71|Male, No:Sun, Dinner, 4'> # Importing pandas library> import> pandas as pd> # Load the data of csv> df> => pd.read_csv(> 'sample.csv'> ,> > sep> => '[:, |_]'> ,> > engine> => 'python'> )> # Print the Dataframe> print> (df)> |
Ausgabe:
totalbill tip Unnamed: 2 sex smoker Unnamed: 5 day time Unnamed: 8 size 16.99 NaN 1.01 Female No NaN Sun NaN Dinner NaN 2 10.34 NaN 1.66 NaN Male NaN No Sun Dinner NaN 3 21.01 3.50 Male NaN No Sun NaN Dinner NaN 3.0 None 23.68 NaN 3.31 NaN Male No NaN Sun Dinner NaN 2 24.59 3.61 NaN Female No NaN Sun NaN Dinner NaN 2 25.29 NaN 4.71 Male NaN No Sun NaN Dinner NaN 4
Usecols in read_csv() verwenden
Hier geben wir nur 3 Spalten an, d. h. [Vorname, Geschlecht, E-Mail], die geladen werden sollen, und verwenden den Header 0 als Standardheader.
Python3
df> => pd.read_csv(> 'people.csv'> ,> > header> => 0> ,> > usecols> => [> 'First Name'> ,> 'Sex'> ,> 'Email'> ])> # printing dataframe> print> (df.head())> |
Ausgabe:
First Name Sex Email 0 Shelby Male [email protected] 1 Phillip Female [email protected] 2 Kristine Male [email protected] 3 Yesenia Male [email protected] 4 Lori Male [email protected]
Verwendung von index_col in read_csv()
Hier verwenden wir die Sex Zuerst den Index und dann den Berufsbezeichnung index können wir den Header einfach mit neu indizieren index_col Parameter.
Python3
df> => pd.read_csv(> 'people.csv'> ,> > header> => 0> ,> > index_col> => [> 'Sex'> ,> 'Job Title'> ],> > usecols> => [> 'Sex'> ,> 'Job Title'> ,> 'Email'> ])> print> (df.head())> |
Ausgabe:
Email Sex Job Title Male Games developer [email protected] Female Phytotherapist [email protected] Male Homeopath [email protected] Market researcher [email protected] Veterinary surgeon [email protected]
Verwendung von Nrows in read_csv()
Hier zeigen wir nur 5 Zeilen an nrows-Parameter .
Python3
df> => pd.read_csv(> 'people.csv'> ,> > header> => 0> ,> > index_col> => [> 'Sex'> ,> 'Job Title'> ],> > usecols> => [> 'Sex'> ,> 'Job Title'> ,> 'Email'> ],> > nrows> => 3> )> print> (df)> |
Ausgabe:
Email Sex Job Title Male Games developer [email protected] Female Phytotherapist [email protected] Male Homeopath [email protected]
Skiprows in read_csv() verwenden
Der Skiprows helfen, einige Zeilen in CSV zu überspringen, d. h. hier werden Sie feststellen, dass die in „skiprows“ genannten Zeilen aus dem Originaldatensatz übersprungen wurden.
Python3
df> => pd.read_csv(> 'people.csv'> )> print> (> 'Previous Dataset: '> )> print> (df)> # using skiprows> df> => pd.read_csv(> 'people.csv'> , skiprows> => [> 1> ,> 5> ])> print> (> 'Dataset After skipping rows: '> )> print> (df)> |
Ausgabe:
Previous Dataset: First Name Last Name Sex Email Date of birth Job Title 0 Shelby Terrell Male [email protected] 1945-10-26 Games developer 1 Phillip Summers Female [email protected] 1910-03-24 Phytotherapist 2 Kristine Travis Male [email protected] 1992-07-02 Homeopath 3 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 4 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon 5 Erin Day Male [email protected] 2015-10-28 Management officer 6 Katherine Buck Female [email protected] 1989-01-22 Analyst 7 Ricardo Hinton Male [email protected] 1924-03-26 Hydrogeologist Dataset After skipping rows: First Name Last Name Sex Email Date of birth Job Title 0 Shelby Terrell Male [email protected] 1945-10-26 Games developer 1 Kristine Travis Male [email protected] 1992-07-02 Homeopath 2 Yesenia Martinez Male [email protected] 2017-08-03 Market researcher 3 Lori Todd Male [email protected] 1938-12-01 Veterinary surgeon 4 Katherine Buck Female [email protected] 1989-01-22 Analyst 5 Ricardo Hinton Male [email protected] 1924-03-26 Hydrogeologist