CommencezCommencez gratuitement

Mettre le tout ensemble (3)

Dans l'exercice précédent, vous avez amélioré votre fonction count_entries() en ajoutant un bloc try-except. Cela permettait d'afficher des messages utiles quand on appelait count_entries() avec un nom de colonne absent du DataFrame. Dans cet exercice, vous allez plutôt lever une ValueError si l'utilisateur fournit un nom de colonne qui n'est pas présent dans le DataFrame.

Encore une fois, pour vous faciliter la tâche, pandas a été importé sous l'alias pd et le fichier 'tweets.csv' a été importé dans le DataFrame tweets_df. Des parties du code de votre travail précédent sont également fournies.

Cette activité fait partie du cours

Introduction aux fonctions en Python

Voir le cours

Instructions de l’exercice

  • Si col_name n'est pas une colonne du DataFrame df, levez une ValueError 'The DataFrame does not have a ' + col_name + ' column.'.
  • Appelez votre nouvelle fonction count_entries() pour analyser la colonne 'lang' de tweets_df. Stockez le résultat dans result1.
  • Affichez result1. Cela a déjà été fait pour vous, alors cliquez sur "Soumettre la réponse" pour voir le résultat. Dans le prochain exercice, vous verrez que cela lève les ValueError nécessaires.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Define count_entries()
def count_entries(df, col_name='lang'):
    """Return a dictionary with counts of
    occurrences as value for each key."""
    
    # Raise a ValueError if col_name is NOT in DataFrame
    if col_name not in df.columns:
        ____

    # Initialize an empty dictionary: cols_count
    cols_count = {}
    
    # 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

# Call count_entries(): result1
____

# Print result1
print(result1)
Modifier et exécuter le code