为什么ORDER只返回第一行

问题描述:

我有一个相当简单的data.frame(fract_data),我试图排序,但是当我应用ORDER函数时,只返回第一行。不应该返回所有行吗?我应该如何使用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 

如下所示有48行中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" 

order()期望的一个或多个载体,以及你给它仅包含一个元件,“日期”的字符向量。改为尝试fract_data[order(fract_data$date), ]

+0

辉煌,谢谢,我认为这会很简单。谢谢你的帮助。非常感激。 – 2012-02-06 06:28:49

+0

尝试'安排(fract_data,日期)'在包'plyr'中 – baptiste 2012-02-07 06:20:16