De ultieme gids: csv-bestanden lezen met panda's
CSV-bestanden (door komma’s gescheiden waarden) zijn een van de meest gebruikelijke manieren om gegevens op te slaan.
Gelukkig kun je met de pandas read_csv()- functie eenvoudig CSV-bestanden in Python lezen in vrijwel elk gewenst formaat.
In deze tutorial worden verschillende manieren uitgelegd om CSV-bestanden in Python te lezen met behulp van het volgende CSV-bestand met de naam „data.csv“ :
playerID,team,points 1,Lakers,26 2,Mavs,19 3,Bucks,24 4,Spurs,22
Voorbeeld 1: Lees het CSV-bestand in het Panda’s DataFrame
De volgende code laat zien hoe u het CSV-bestand in een Panda DataFrame leest:
#import CSV file as DataFrame df = pd. read_csv ('data.csv') #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
Voorbeeld 2: Specifieke kolommen uit een CSV-bestand lezen
De volgende code laat zien hoe u alleen de kolommen met de naam ‚playerID‘ en ‚points‘ uit het CSV-bestand in een pandas DataFrame kunt lezen:
#import only specific columns from CSV file df = pd. read_csv ('data.csv', usecols=[' playerID ',' points ']) #view DataFrame df playerID points 0 1 26 1 2 19 2 3 24 3 4 22
U kunt ook kolomindexen opgeven die u in een Panda DataFrame wilt inlezen:
#import only specific columns from CSV file df = pd. read_csv (' data.csv ', usecols=[ 0,1 ]) #view DataFrame df playerID team 0 1 Lakers 1 2 Mavs 2 3 Bucks 3 4 Spurs
Voorbeeld 3: Geef de koprij op bij het importeren van een CSV-bestand
In sommige gevallen is de koprij mogelijk niet de eerste rij in een CSV-bestand.
Beschouw bijvoorbeeld het volgende CSV-bestand waarin de koprij daadwerkelijk in de tweede rij verschijnt:
random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22
Om dit CSV-bestand in een Panda DataFrame te lezen, kunnen we header=1 als volgt specificeren:
#import from CSV file and specify that header starts on second row df = pd. read_csv ('data.csv', header= 1 ) #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
Voorbeeld 4: Rijen overslaan bij het importeren van een CSV-bestand
U kunt ook eenvoudig rijen overslaan bij het importeren van een CSV-bestand door het skiprows- argument te gebruiken.
De volgende code laat bijvoorbeeld zien hoe u de tweede regel negeert bij het importeren van het CSV-bestand:
#import from CSV file and skip second row df = pd. read_csv ('data.csv', skiprows=[ 1 ] ) #view DataFrame df playerID team points 0 2 Mavs 19 1 3 Bucks 24 2 4 Spurs 22
En de volgende code laat zien hoe u de tweede en derde regel negeert bij het importeren van het CSV-bestand:
#import from CSV file and skip second and third rows df = pd. read_csv ('data.csv', skiprows=[ 1,2 ] ) #view DataFrame df playerID team points 1 3 Bucks 24 2 4 Spurs 22
Voorbeeld 5: CSV-bestanden lezen met een aangepast scheidingsteken
Soms hebt u mogelijk een CSV-bestand met een ander scheidingsteken dan een komma.
Stel bijvoorbeeld dat ons CSV-bestand een onderstrepingsteken als scheidingsteken heeft:
playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22
Om dit CSV-bestand in panda’s te lezen, kunnen we het sep- argument gebruiken om het scheidingsteken op te geven dat moet worden gebruikt bij het lezen van het bestand:
#import from CSV file and specify delimiter to use df = pd. read_csv ('data.csv', sep=' _ ') #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende panda-taken kunt uitvoeren:
Hoe een tekstbestand te lezen met Panda’s
Excel-bestanden lezen met Panda’s
TSV-bestanden lezen met Panda’s
HTML-tabellen lezen met Panda’s