0

我有一个 df :

Years Company ID    Name    Return
2003    23  622009  a       2323123
2008    14  622008  v       2312343
2009    43  622007  c       35345345
2006    32  622006  d       45656554
2005    67  622005  f       756756766
1999    60  622004  y       4564533
2001    63  622003  i       6756766
2002    66  622002  m       32423412
2008    68  622001  o       934833833
2004    48  622000  e       34132222

我正在尝试Years按升序重新排列列的顺序(因此最近的一年(2009 年)位于顶部)。例如:

Years Company ID    Name    Return
2009    62  622007  c       35345345
2008    62  622008  v       2312343 
2008    62  622001  o       934833833 
2006    62  622006  d       45656554
2005    62  622005  f       756756766

等等...

我试图用一个 for 循环来做,但它给出了一个不正确的答案。我只得到最后一行:

2005    62  622005  f       756756766

for (i in 1:length(unique(df$Year))){
  mm<-df[df$Year==unique(df$Year)[i],]
}

有人可以指导我做错了什么吗?

4

1 回答 1

4

使用order功能:

df[order(df$Years,decreasing=TRUE), ]
于 2012-10-11T13:29:50.740 回答