将列列表传递给R中的Order函数

将列列表传递给R中的Order函数,r,R,我在R中有一个包含大量列的数据帧。我需要按几列顺序订购。通常,我可以使用如下代码进行订购 someData[with(someData, order(col1, col2)),] 但是,我有一个要排序的列列表: sortcols= c('col1','col2','col3',...) 我需要通过将sortcols传递给order函数来对数据进行排序。我如何才能做到这一点。这应该是可行的: someData[ with( someData, do.call(order, mget(sortc

我在R中有一个包含大量列的数据帧。我需要按几列顺序订购。通常,我可以使用如下代码进行订购

someData[with(someData, order(col1, col2)),]
但是,我有一个要排序的列列表:

sortcols= c('col1','col2','col3',...)
我需要通过将sortcols传递给order函数来对数据进行排序。我如何才能做到这一点。

这应该是可行的:

someData[ with( someData, do.call(order, mget(sortcols)) ), ]

使用(someData,do.call(order,mget(sortcols))
,我想。您可以使用
dplyr
通过执行
someData%>%arrange.\udots=sortcols)
@frank您的解决方案对我很好。你想回答这个问题吗?这样我就可以接受了。