Totul la un loc (2)
Super! Tocmai ai generalizat analiza limbajului din Twitter, pe care ai realizat-o în capitolul anterior, adăugând un argument implicit pentru numele coloanei. Acum vei duce această funcție cu un pas mai departe, permițând utilizatorului să transmită un argument flexibil – mai exact, atâtea nume de coloane câte dorește!
Ca și înainte, pandas a fost importat ca pd, iar fișierul 'tweets.csv' a fost încărcat în DataFrame-ul tweets_df. O parte din codul scris anterior îți este deja furnizat.
Acest exercițiu face parte din cursul
Introducere în funcții în Python
Instrucțiuni pentru exercițiu
- Completează antetul funcției furnizând parametrul pentru DataFrame-ul
dfși argumentul flexibil*args. - Completează bucla
fordin definiția funcției astfel încât iterarea să se facă peste tuplaargs. - Apelează
count_entries()transmițând DataFrame-ultweets_dfși numele coloanei'lang'. Atribuie rezultatul variabileiresult1. - Apelează
count_entries()transmițând DataFrame-ultweets_dfși numele coloanelor'lang'și'source'. Atribuie rezultatul variabileiresult2.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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)