ComeçarComece de graça

Reunindo tudo isso (2)

Às vezes, cometemos erros ao chamar funções, mesmo aquelas que você mesmo criou. Mas não se preocupe! Neste exercício, você aprimorará o trabalho anterior com a função count_entries() no último capítulo, adicionando um bloco try-except a ela. Isso permitirá que sua função forneça uma mensagem útil quando o usuário chamar a função count_entries(), mas fornecer um nome de coluna que não esteja no DataFrame.

Mais uma vez, para sua conveniência, pandas foi importado como pd e o arquivo 'tweets.csv' foi importado para o DataFrame tweets_df. Partes do código de seu trabalho anterior também são fornecidas.

Este exercício faz parte do curso

Introdução a funções em Python

Ver curso

Instruções do exercício

  • Adicione um bloco try para que, quando a função for chamada com os argumentos corretos, ela processe o DataFrame e retorne um dicionário de resultados.
  • Adicione um bloco except para que, quando a função for chamada incorretamente, você receba a seguinte mensagem de erro: 'The DataFrame does not have a ' + col_name + ' column.'.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Define count_entries()
def count_entries(df, col_name='lang'):
    """Return a dictionary with counts of
    occurrences as value for each key."""

    # Initialize an empty dictionary: cols_count
    cols_count = {}

    # Add try block
    ____:
        # 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

    # Add except block
    ____:
        ____

# Call count_entries(): result1
result1 = count_entries(tweets_df, 'lang')

# Print result1
print(result1)
Editar e executar o código