ComeçarComece de graça

Obtendo o número de níveis

Com mutate() e summarize() no dplyr, você pode usar a função across() para indicar que o segundo argumento (uma função) deve ser aplicado a todas as colunas para as quais o primeiro argumento é verdadeiro.

Vamos usar isso junto com tidyr para obter o número de níveis de cada variável fator em multiple_choice_responses. O pivot_longer() do tidyr transforma um conjunto de dados do formato largo para o formato longo. Seus dois argumentos são os novos nomes de coluna — um contendo os nomes das colunas antigas e outro com todos os valores.

Este exercício faz parte do curso

Dados Categóricos no Tidyverse

Ver curso

Instruções do exercício

  • Transforme todas as colunas de caracteres em colunas fator e salve o novo conjunto de dados como responses_as_factors.
  • Crie um novo conjunto de dados, number_of_levels, em que você:
    • Use summarize com across para aplicar a função nlevels() a cada coluna.
    • Altere o formato do conjunto de dados de largo para longo.

Exercício interativo prático

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

# Change all the character columns to factors
responses_as_factors <- multiple_choice_responses %>%
    mutate(___(is.character, as.factor))

number_of_levels <- responses_as_factors %>%
	# Apply the function nlevels to each column
    summarize(___(everything(), ___)) %>%
    # Change the dataset from wide to long
    ___(everything(), names_to = "variable", values_to = "num_levels")
Editar e executar o código