CommencerCommencer gratuitement

Ecrire un itérateur pour charger des données par morceaux (2)

Dans l'exercice précédent, vous avez utilisé read_csv() pour lire des morceaux de DataFrame à partir d'un grand ensemble de données. Dans cet exercice, vous lirez un fichier en utilisant une taille de bloc DataFrame plus importante, puis vous traiterez les données du premier bloc.

Pour traiter les données, vous allez créer un autre DataFrame composé uniquement des lignes d'un pays spécifique. Vous allez ensuite fusionner deux des colonnes du nouveau DataFrame, 'Total Population' et 'Urban population (% of total)'. Enfin, vous créerez une liste de tuples à partir de l'objet zip, chaque tuple étant composé d'une valeur de chacune des deux colonnes mentionnées.

Vous allez utiliser les données de 'ind_pop_data.csv', disponibles dans votre répertoire actuel. pandas a été importé en tant que pd.

Cet exercice fait partie du cours

Boîte à outils Python

Afficher le cours

Instructions

  • Utilisez pd.read_csv() pour lire le fichier dans 'ind_pop_data.csv' par morceaux de taille 1000. Affectez le résultat à urb_pop_reader.
  • Récupérez le premier bloc DataFrame de l'itérable urb_pop_reader et affectez-le à df_urb_pop.
  • Sélectionnez uniquement les lignes de df_urb_pop qui ont pour 'CountryCode' 'CEB' . Pour ce faire, comparez si df_urb_pop['CountryCode'] est égal à 'CEB' entre les crochets de df_urb_pop[____].
  • À l'aide de zip(), regroupez les colonnes 'Total Population' et 'Urban population (% of total)' de df_pop_ceb. Attribuez 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