按r中的列对数据帧进行排序

Eli*_*eth 3 r

可能重复:
如何按R中的列对数据帧进行排序

我试图按几列对data.frame进行排序

df<-data.frame("Sp1"=c(7,4,2),"Sp2"=c(6,2,1))
row.names(df)<-c("A01","A02","A03")

    Sp1 Sp2
A01   7   6
A02   4   2
A03   2   1

#I am using    

df[with(df, order("Sp1"))]
Run Code Online (Sandbox Code Playgroud)

但这没有任何作用.有什么想法吗?谢谢

A5C*_*2T1 6

Sp1使用时不应引用with.这总是会返回1,因此只返回第一行.试试这个:

> df[order(df$Sp1),] 
    Sp1 Sp2
A03   2   1
A02   4   2
A01   7   6
> df[with(df, order(Sp1)), ]
    Sp1 Sp2
A03   2   1
A02   4   2
A01   7   6
Run Code Online (Sandbox Code Playgroud)