Como adicionar um novo nível para fatorar r (com exemplo)


Você pode usar a seguinte sintaxe básica para adicionar um novo nível a uma variável de fator em R:

 levels(df$my_factor) <- c(levels(df$my_factor), ' new_level ')

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: Adicione um novo nível ao fator em R

Suponha que temos o seguinte quadro de dados em R que mostra o número de vendas realizadas em diferentes regiões para uma loja de varejo:

 #create data frame
df <- data. frame (region=factor(c('A', 'B', NA, 'D', NA, 'F')),
                 sales=c(12, 18, 21, 14, 34, 40))

#view data frame
df

  regional sales
1 to 12
2 B 18
3 <NA> 21
4 D 14
5 <NA> 34
6 F 40

Observe que a variável região é um fator.

Para visualizar os níveis deste fator, podemos usar a função níveis() :

 #view factor levels for region
levels(df$region)

[1] “A” “B” “D” “F”

Podemos usar a seguinte sintaxe para adicionar um novo nível de fator chamado “sem região”:

 #add factor level called 'no region'
levels(df$region) <- c(levels(df$region), ' no region ')

#convert each NA to 'no region'
df$region[is. na (df$region)] <- ' no region '

#view factor levels for region
levels(df$region)

[1] “A” “B” “D” “F” “no region”

O novo nível denominado “sem região” foi adicionado como nível de fator.

Se desejarmos, podemos usar a função table() para contar a ocorrência de cada nível de fator:

 #view occurrences of each factor level
table(df$region)

ABDF no region 
1 1 1 1 2 

A partir do resultado, podemos ver que o novo nível de fator denominado “sem região” aparece duas vezes na coluna de região do quadro de dados.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como converter um fator em numérico em R
Como converter fator em caractere em R
Como reorganizar os níveis dos fatores em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *