我有一个相当简单的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
考虑到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"
答案 0 :(得分:13)
order()
需要一个或多个向量,并为它提供一个只包含一个元素的字符向量“date”。请改为fract_data[order(fract_data$date), ]
。