as.factor создает «другой» уровень в R - PullRequest
0 голосов
/ 09 ноября 2018

Я преобразую символьную переменную в моем фрейме данных df в факторы. Одна из моих символьных переменных (столбец) выглядит следующим образом.

Age-Range
19-24
25-34
35-45
45-54
55-64
65-74
75+

Я использую следующий код для преобразования этого столбца символов в факторы.

df <- mutate_if(df, is.character, as.factor)

Все остальные столбцы в порядке, кроме Age_Range, для которого результат summary() выглядит следующим образом.

45-54: 1125
55-64: 984
35-44: 664
65-74:579
75+: 309
(Other):342
NA's: 997

Мне интересно, почему я не вижу возрастные диапазоны - 19-24 и 25-34. Может ли кто-нибудь помочь мне понять, почему?

1 Ответ

0 голосов
/ 09 ноября 2018

С help(summary):

Для факторов показана частота первых maxsum - 1 наиболее частых уровней, а менее частые уровни суммированы в "(Другие)" (в результате получается самое большее maxsum частот).

Так что попробуйте изменить аргумент maxsum вверх, и в результате вы увидите больше уровней. По умолчанию установлено значение 100. Вот пример использования встроенного набора данных attenu:

summary(attenu$station, maxsum = 3)
#    117 (Other)    NA's 
#      5     161      16 
summary(attenu$station, maxsum = 7)
#    117    1028     113     112     135 (Other)    NA's 
#      5       4       4       3       3     147      16 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...