CommencerCommencer gratuitement

Écrire un itérateur pour charger des données par blocs (2)

Dans l’exercice précédent, vous avez utilisé read_csv() pour lire des blocs de DataFrame à partir d’un grand jeu de données. Dans cet exercice, vous allez lire un fichier avec une taille de bloc plus grande, puis traiter les données du premier bloc.

Pour traiter les données, vous allez créer un autre DataFrame ne contenant que les lignes d’un pays spécifique. Vous combinerez ensuite deux colonnes de ce nouveau DataFrame avec zip() : 'Total Population' et 'Urban population (% of total)'. Enfin, vous créerez une liste de tuples à partir de l’objet zip, où chaque tuple est composé d’une valeur de chacune des deux colonnes mentionnées.

Vous allez utiliser les données de 'ind_pop_data.csv', disponible dans votre répertoire courant. pandas a été importé sous le nom pd.

Cet exercice fait partie du cours

Boîte à outils Python

Afficher le cours

Instructions

  • Utilisez pd.read_csv() pour lire le fichier 'ind_pop_data.csv' par blocs de taille 1000. Affectez le résultat à urb_pop_reader.
  • Récupérez le premier bloc de DataFrame de l’itérable urb_pop_reader et affectez-le à df_urb_pop.
  • Sélectionnez uniquement les lignes de df_urb_pop dont la valeur de 'CountryCode' est 'CEB'. Pour ce faire, comparez si df_urb_pop['CountryCode'] est égal à 'CEB' entre crochets dans df_urb_pop[____].
  • En utilisant zip(), combinez les colonnes 'Total Population' et 'Urban population (% of total)' de df_pop_ceb. Affectez l’objet zip résultant à pops.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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)
Modifier et exécuter le code