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 に答える