CommencerCommencer gratuitement

On mélange tout (2)

Vous venez de généraliser l’analyse de langage Twitter que vous avez effectuée dans le chapitre précédent en incluant un argument par défaut pour le nom de la colonne. Vous allez maintenant généraliser cette fonction en permettant à l’utilisateur de lui passer un argument flexible, c’est-à-dire, dans ce cas, autant de noms de colonnes que l’utilisateur le souhaite !

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

  • Complétez l’en-tête de la fonction en fournissant le paramètre du DataFrame df et l’argument flexible *args.
  • Complétez la boucle for dans la définition de la fonction de manière à ce que la boucle se produise sur le tuple args.
  • Appelez count_entries() en lui transmettant le DataFrame tweets_df et le nom de la colonne 'lang'. Affectez le résultat à result1.
  • Appelez count_entries() en lui transmettant le DataFrame tweets_df et les noms de colonnes 'lang' et 'source'. Affectez le résultat à result2.

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: cols_count
    cols_count = {}
    
    # Iterate over column names in args
    for col_name in ____:
    
        # 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
result1 = count_entries(____, ____)

# Call count_entries(): result2
result2 = count_entries(____, ____, ____)

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