Aan de slagGa gratis aan de slag

Een iterator schrijven om data in chunks te laden (2)

In de vorige oefening heb je read_csv() gebruikt om DataFrame-chunks in te lezen uit een grote gegevensset. In deze oefening lees je een bestand in met een grotere chunkgrootte voor de DataFrame en verwerk je de data uit de eerste chunk.

Om de data te verwerken, maak je een nieuwe DataFrame die alleen de rijen van een specifiek land bevat. Daarna combineer je met zip() twee kolommen uit de nieuwe DataFrame: 'Total Population' en 'Urban population (% of total)'. Tot slot maak je een lijst van tuples uit het zip-object, waarbij elke tuple bestaat uit een waarde uit elk van de twee genoemde kolommen.

Je gebruikt de data uit 'ind_pop_data.csv', beschikbaar in je huidige map. pandas is geïmporteerd als pd.

Deze oefening maakt deel uit van de cursus

Python-gereedschapskist

Cursus bekijken

Oefeninstructies

  • Gebruik pd.read_csv() om het bestand 'ind_pop_data.csv' in te lezen in chunks van grootte 1000. Ken het resultaat toe aan urb_pop_reader.
  • Haal de eerste DataFrame-chunk op uit de iterable urb_pop_reader en ken deze toe aan df_urb_pop.
  • Selecteer alleen de rijen van df_urb_pop met een 'CountryCode' van 'CEB'. Vergelijk daarvoor binnen de vierkante haken in df_urb_pop[____] of df_urb_pop['CountryCode'] gelijk is aan 'CEB'.
  • Gebruik zip() om de kolommen 'Total Population' en 'Urban population (% of total)' van df_pop_ceb te combineren. Ken het resulterende zip-object toe aan pops.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Initialize reader object: urb_pop_reader
urb_pop_reader = pd.read_csv(____, ____)

# Get the first DataFrame chunk: df_urb_pop
df_urb_pop = next(____)

# Check out the head of the DataFrame
print(df_urb_pop.head())

# Check out specific country: df_pop_ceb
df_pop_ceb = df_urb_pop[____]

# Zip DataFrame columns of interest: pops
pops = zip(____, ____)

# Turn zip object into list: pops_list
pops_list = list(pops)

# Print pops_list
print(pops_list)
Code bewerken en uitvoeren