Panda's lezen CSV in Python

CSV-bestanden zijn door komma's gescheiden bestanden. Om toegang te krijgen tot gegevens uit het CSV-bestand hebben we een functie read_csv() van Pandas nodig die gegevens ophaalt in de vorm van het dataframe.

Syntaxis van read_csv()

Hier is de Panda's lezen CSV syntaxis met zijn parameters.

Syntaxis: pd.read_csv (filepath_or_buffer, sep=’ ,’ , header=’infer’, index_col=Geen, usecols=Geen, engine=Geen, skiprows=Geen, nrows=Geen)

Parameters:

  • bestandspad_of_buffer : Locatie van het csv-bestand. Het accepteert elk tekenreekspad of URL van het bestand.
  • sep : Dit staat voor separator, standaard is ‘, ‘.
  • koptekst : Het accepteert int, een lijst met int, rijnummers die als kolomnamen moeten worden gebruikt, en het begin van de gegevens. Als er geen namen worden doorgegeven, bijvoorbeeld header=None, wordt de eerste kolom weergegeven als 0, de tweede als 1, enzovoort.
  • gebruik cols : Haalt alleen geselecteerde kolommen op uit het CSV-bestand.
  • nrows : Aantal rijen dat moet worden weergegeven uit de gegevensset.
  • index_kol : Indien Geen, worden er geen indexnummers weergegeven samen met records.
  • springt : slaat voorbije rijen in het nieuwe dataframe over.

Lees het CSV-bestand met Pandas read_csv

Voordat we deze functie gebruiken, moeten we het Panda's bibliotheek, zullen we het CSV-bestand laden met Pandas.

PYTHON3




# Import pandas> import> pandas as pd> # reading csv file> df> => pd.read_csv(> 'people.csv'> )> print> (df.head())>

Uitgang:

 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 

Gebruik makend van sep in lees_csv()

In dit voorbeeld nemen we een CSV-bestand en voegen vervolgens enkele speciale tekens toe om te zien hoe de sep parameter werkt.

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)>

Uitgang:

 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 gebruiken in read_csv()

Hier specificeren we slechts 3 kolommen, d.w.z. [Voornaam, Geslacht, E-mail] om te laden en we gebruiken header 0 als standaardheader.

Python3




df> => pd.read_csv(> 'people.csv'> ,> > header> => 0> ,> > usecols> => [> 'First Name'> ,> 'Sex'> ,> 'Email'> ])> # printing dataframe> print> (df.head())>

Uitgang:

 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] 

Index_col gebruiken in read_csv()

Hier gebruiken we de Seks eerst indexeren en dan de Functietitel index, we kunnen de header eenvoudig opnieuw indexeren met index_kol parameter.

Python3




df> => pd.read_csv(> 'people.csv'> ,> > header> => 0> ,> > index_col> => [> 'Sex'> ,> 'Job Title'> ],> > usecols> => [> 'Sex'> ,> 'Job Title'> ,> 'Email'> ])> print> (df.head())>

Uitgang:

 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] 

Nrows gebruiken in read_csv()

Hier geven we slechts 5 rijen weer met behulp van 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)>

Uitgang:

 Email Sex Job Title  Male Games developer [email protected] Female Phytotherapist [email protected] Male Homeopath [email protected] 

Skiprows gebruiken in read_csv()

De springt helpen bij het overslaan van enkele rijen in CSV, dat wil zeggen dat u hier zult zien dat de rijen die in skiprows worden genoemd, zijn overgeslagen uit de oorspronkelijke dataset.

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)>

Uitgang:

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