Jak dodać nowy poziom do współczynnika r (z przykładem)


Możesz użyć następującej podstawowej składni, aby dodać nowy poziom do zmiennej czynnikowej w R:

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

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Dodaj nowy poziom do współczynnika w R

Załóżmy, że mamy następującą ramkę danych w R, która pokazuje liczbę sprzedaży dokonanych w różnych regionach dla sklepu detalicznego:

 #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

Należy pamiętać, że zmienna regionu jest czynnikiem.

Aby zwizualizować poziomy tego czynnika, możemy użyć funkcji poziomy() :

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

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

Możemy użyć następującej składni, aby dodać nowy poziom współczynnika o nazwie „brak regionu”:

 #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”

Jako poziom czynnikowy dodano nowy poziom o nazwie „brak regionu”.

Jeśli chcemy, możemy użyć funkcji table() do zliczenia wystąpienia każdego poziomu czynnika:

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

ABDF no region 
1 1 1 1 2 

Na podstawie wyniku widzimy, że nowy poziom współczynnika o nazwie „brak regionu” pojawia się dwukrotnie w kolumnie regionu ramki danych.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak przekonwertować współczynnik na liczbę w R
Jak przekonwertować współczynnik na znak w R
Jak zmienić układ poziomów czynników w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *