IniziaInizia gratis

Mettere insieme tutto (3)

Nell'esercizio precedente, hai sviluppato la tua funzione count_entries() per aggiungere il blocco try-except. Questo per far sì che gli utenti ricevano messaggi utili quando chiamano la funzione count_entries() e forniscono un nome di colonna che non è presente nel DataFrame. In questo esercizio, invece, solleverai un ValueError nel caso in cui l'utente fornisca un nome di colonna che non è presente nel DataFrame.

Ancora una volta, per comodità, pandas è stato importato come pd e il file 'tweets.csv' è stato importato nel DataFrame tweets_df. Vengono fornite anche parti del codice del tuo lavoro precedente.

Questo esercizio fa parte del corso

Introduzione alle funzioni in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Se col_name non è una colonna del DataFrame df, solleva un problema ValueError 'The DataFrame does not have a ' + col_name + ' column.'.
  • Chiama la nuova funzione count_entries() per analizzare la colonna 'lang' di tweets_df. Memorizza il risultato in result1.
  • Stampa result1. Questo è stato fatto per te, quindi premi "Invia risposta" per verificare il risultato. Nel prossimo esercizio, vedrai che si alza il necessario ValueErrors.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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)
Modifica ed esegui il codice