в R возможно ли иметь NA как минимум упорядоченных уровней факторов? - PullRequest
0 голосов
/ 03 июля 2018

При использовании упорядоченного коэффициента с NA в качестве одного из уровней, как сделать NA наименьшим (минимальным) уровнем?

Предположим, у меня есть коэффициент z типа заказа. Добавление NA в качестве одного из уровней приводит к тому, что NA отображается как самый высокий (максимальный) уровень.

z <- factor(sample(LETTERS[1:3], 7, replace=TRUE))
z[4] <- NA
z <- ordered(z)
z <- addNA(z)
min(z)           # A
max(z)           # NA

Как упорядочить уровни так, чтобы min(z) было NA, а max(z) было "C"? Обычный способ переупорядочения капель NA:

 z <- factor(z, levels = c(NA, "A", "B", "C"))
 levels(z)       # "A" "B" "C"

Ответы [ 2 ]

0 голосов
/ 03 июля 2018
z=ordered(z,levels=c(NA,levels(z)),exclude=NULL)
> min(z)
[1] <NA>
Levels: A < B < C
> max(z)
[1] C
Levels: A < B < C
0 голосов
/ 03 июля 2018

Используйте аргументы exclude и ordered factor:

set.seed(2017);
z <- factor(z, levels = c(NA, "A", "B", "C"), exclude = "", ordered = T)
#[1] <NA> A    C    A    C    B    B
#Levels: <NA> < A < B < C

min(z)
#[1] <NA>
#Levels: A < B < C
max(z)
#[1] C
#Levels: A < B < C
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...