Почему ORDER возвращает только первый ряд - PullRequest
4 голосов
/ 06 февраля 2012

У меня есть довольно простой data.frame (fract_data), который я пытаюсь отсортировать, и все же, когда я применяю функцию ORDER, возвращается только первая строка.Разве не все строки должны быть возвращены?Как мне использовать ORDER, чтобы вернуть все строки?

    fract_data[order("date"),]
        date code rank.ey rank.roce rank.combined rank.final fract
1 2005-01-31  ABC       1         8             9          4     3

Как показано ниже, в fract_data

attributes(fract_data)
$names
[1] "date"          "code"          "rank.ey"       "rank.roce"     "rank.combined" "rank.final"    "fract"        

$class
[1] "data.frame"

$row.names
 [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
[42] 42 43 44 45 46 47 48

есть 48 строк.быть проблемой печати или отображения, учитывая атрибуты, возвращаемые ниже, где fract_data2 имеет только 1 строку.

> fract_data2 <- fract_data[order("date"),]
> attributes(fract_data2)
$names
[1] "date"          "code"          "rank.ey"       "rank.roce"     "rank.combined" "rank.final"    "fract"        

$row.names
[1] 1

$class
[1] "data.frame"

1 Ответ

13 голосов
/ 06 февраля 2012

order() ожидает один или несколько векторов, и вы передаете ему символьный вектор, содержащий только один элемент "date". Попробуйте fract_data[order(fract_data$date), ] вместо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...