ComenzarEmpieza gratis

Unirlo todo (3)

En el ejercicio anterior, te basaste en tu función count_entries() para añadir un bloque try-except. Esto era para que los usuarios recibieran mensajes de ayuda al llamar a tu función count_entries() y proporcionar un nombre de columna que no está en el DataFrame. En este ejercicio, en lugar de eso, plantearás un ValueError en el caso de que el usuario proporcione un nombre de columna que no esté en el DataFrame.

Una vez más, para tu comodidad, pandas se ha importado como pd y el archivo 'tweets.csv' se ha importado en el DataFrame tweets_df. También se proporcionan partes del código de tu trabajo anterior.

Este ejercicio forma parte del curso

Introducción a las funciones en Python

Ver curso

Instrucciones de ejercicio

  • Si col_name no es una columna del DataFrame df, se produce un error ValueError 'The DataFrame does not have a ' + col_name + ' column.'.
  • Llama a tu nueva función count_entries() para analizar la columna 'lang' de tweets_df. Almacena el resultado en result1.
  • Imprime result1. Ya lo hemos hecho por ti, así que pulsa "Enviar respuesta" para comprobar el resultado. En el siguiente ejercicio, verás que plantea los ValueErrors necesarios.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# 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)
Editar y ejecutar código