CommencerCommencer gratuitement

On mélange tout (3)

Dans l’exercice précédent, vous avez utilisé votre fonction count_entries() pour ajouter un bloc try-except. L’objectif était que les utilisateurs obtiennent des messages utiles lorsqu’ils appellent votre fonction count_entries() en fournissant un nom de colonne qui ne se trouve pas dans le DataFrame. Dans cet exercice, vous lèverez plutôt une ValueError dans le cas où l’utilisateur fournit un nom de colonne qui ne se trouve 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

Afficher le cours

Instructions

  • Si col_name n’ est pas une colonne du DataFrame df, levez une erreur ValueError 'The DataFrame does not have a ' + col_name + ' column.'.
  • Appelez votre nouvelle fonction count_entries() pour analyser la colonne 'lang' de tweets_df. Enregistrez le résultat dans result1.
  • Affichez result1. Cela a été fait pour vous, alors cliquez sur « Soumettre la réponse » pour vérifier le résultat. Dans l’exercice suivant, vous verrez qu’elle lève les erreurs ValueErrors nécessaires.

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."""
    
    # 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