On mélange tout (2)
Excellent travail ! Vous avez maintenant défini la fonctionnalité permettant d’itérer sur les entrées d’une colonne et de construire un dictionnaire dont les clés sont les noms des langues et les valeurs le nombre de tweets dans la langue donnée.
Dans cet exercice, vous définirez une fonction avec la fonctionnalité que vous avez développée dans l’exercice précédent, vous renverrez le dictionnaire résultant à partir de la fonction et vous appellerez la fonction avec les arguments appropriés.
Pour aller plus vite, le paquet pandas a été importé en tant que pd
et le fichier 'tweets.csv'
a été importé dans la variable tweets_df
.
Cet exercice fait partie du cours
Introduction aux fonctions en Python
Instructions
- Définissez la fonction
count_entries()
, qui a deux paramètres. Le premier paramètre estdf
pour le DataFrame et le second estcol_name
pour le nom de la colonne. - Complétez les corps des instructions
if-else
dans la bouclefor
: si (if) la clé se trouve dans le dictionnairelangs_count
, ajoutez1
à sa valeur actuelle, sinon (else) ajoutez la clé àlangs_count
et définissez sa valeur à1
. Utilisez la variable de boucleentry
dans votre code. - Renvoyez le dictionnaire
langs_count
à l’intérieur de la fonctioncount_entries()
. - Appelez la fonction
count_entries()
en lui transmettanttweets_df
et le nom de la colonne,'lang'
. Affectez le résultat de l’appel à la variableresult
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Define count_entries()
def ____(____, ____):
"""Return a dictionary with counts of
occurrences as value for each key."""
# Initialize an empty dictionary: langs_count
langs_count = {}
# Extract column from DataFrame: col
col = df[col_name]
# Iterate over lang column in DataFrame
for entry in col:
# If the language is in langs_count, add 1
if entry in langs_count.keys():
____
# Else add the language to langs_count, set the value to 1
else:
____
# Return the langs_count dictionary
# Call count_entries(): result
# Print the result
print(result)