#r
#r
Вопрос:
Мне просто любопытно, почему переупорядочивание фрейма данных с одним столбцом (или матрицы) преобразует его в вектор. Есть ли для этого какая-либо причина?
k <- data.frame(a=c(2,10,3), b=c(8,3,9))
k <- k[order(k[,1]),]
class(k)
# [1] "data.frame"
k <- data.frame(a=c(2,10,3))
k <- k[order(k[,1]),]
class(k)
# [1] "numeric"
Ответ №1:
Посмотрите ?'['
, в частности, на drop
аргумент
drop: For matrices and arrays. If ‘TRUE’ the result is coerced to
the lowest possible dimension (see the examples). This only
works for extracting elements, not for the replacement. See
‘drop’ for further details.
Чтобы ответить на ваш вопрос, вы хотите
k[order(k[,1]), , drop=FALSE]
Комментарии:
1. Спасибо! Это мой второй вопрос с ответом в этом справочном документе. Я должен это прочитать!