logo

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

sorteer arraylist in Java




# 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


linkedlist en arraylist



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

>

>

grijze code

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>