On mélange tout (2)
On fait parfois des erreurs en appelant des fonctions, même celles que vous avez créées vous-même. Mais ne vous inquiétez pas ! Dans cet exercice, vous allez améliorer votre travail précédent avec la fonction count_entries()
dans le dernier chapitre en y ajoutant un bloc try-except
. Cela permettra à votre fonction de fournir un message utile lorsque l’utilisateur appelle votre fonction count_entries()
mais fournit un nom de colonne qui n’est pas dans le DataFrame.
Une fois encore, pour vous aider, pandas
a été importé en tant que pd
et le fichier 'tweets.csv'
a été importé dans le DataFrame tweets_df
. Des morceaux de code de votre travail précédent sont également fournis.
Cet exercice fait partie du cours
Introduction aux fonctions en Python
Instructions
- Ajoutez un bloc
try
de sorte que lorsque la fonction est appelée avec les bons arguments, elle traite le DataFrame et renvoie un dictionnaire de résultats. - Ajoutez un bloc
except
pour que, lorsque la fonction est appelée de manière incorrecte, le message d’erreur suivant s’affiche :'The DataFrame does not have a ' + col_name + ' column.'
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Define count_entries()
def count_entries(df, col_name='lang'):
"""Return a dictionary with counts of
occurrences as value for each key."""
# Initialize an empty dictionary: cols_count
cols_count = {}
# Add try block
____:
# Extract column from DataFrame: col
col = df[col_name]
# Iterate over the column in DataFrame
for entry in col:
# If entry is in cols_count, add 1
if entry in cols_count.keys():
cols_count[entry] += 1
# Else add the entry to cols_count, set the value to 1
else:
cols_count[entry] = 1
# Return the cols_count dictionary
return cols_count
# Add except block
____:
____
# Call count_entries(): result1
result1 = count_entries(tweets_df, 'lang')
# Print result1
print(result1)