@kohske: я знаю, но вода все еще мутит ...

ром не устанавливаемой функции будетlabels, Вы можете устанавливать метки факторов только тогда, когда они создаются с помощью функции факторов. Здесь нетlabels<- функция. Не то, чтобы «ярлыки» и «уровни» в факторах имели какой-то смысл ...

>  fac <- factor(1:3, labels=c("one", "two", "three"))
> fac
[1] one   two   three
Levels: one two three
> labels(fac)
[1] "1" "2" "3"

Хорошо, я попросил метки, которые, как можно было бы предположить, были установлены с помощью факторного вызова, но я получил кое-что довольно ... как это слово, не интуитивно понятно?

> levels(fac)
[1] "one"   "two"   "three"

Таким образом, кажется, что настройка меток действительно устанавливает уровни.

>  fac <- factor(1:3, levels=c("one", "two", "three"))
> levels(fac)
[1] "one"   "two"   "three"

ОК, как и ожидалось. Так что же такое ярлыки, когда устанавливаются уровни?

>  fac <- factor(1:3, levels=c("one", "two", "three"), labels=c("x","y", "z") )
> labels(fac)
[1] "1" "2" "3"
> levels(fac)
[1] "x" "y" "z"

Странно, если вы спросите меня. Казалось бы, аргументы «меток» для фактора превосходят любые аргументы «уровней» для спецификации уровней. Почему это должно быть? Похоже, запутанная терминология. И почемуlabels() Вернуть то, что я хотел бы получить с as.character (as.numeric (fac))?

(Это был тангенциальный комментарий [помеченный как таковой) в предыдущем ответе о функциях присваивания, к которым меня попросили перейти к вопросу. Итак, у вас есть возможность просветить меня.)

Ответы на вопрос(2)

Ваш ответ на вопрос