我有以下data.frame X(样本):
VariableA VariableB VariableC
1 0 A 13
2 0 B 10
3 1 B 1
4 1.5 C 1
5 10 A 64
6 10 B 1
7 5 C 3
我希望先将数据排序到VariableB
,然后再追溯到VariableA
。为了更清楚,我的输出应该是这样的:
VariableA VariableB VariableC
1 0 A 13
5 10 A 64
2 0 B 10
3 1 B 1
6 10 B 1
4 1.5 C 1
7 5 C 3
我尝试了以下内容:
Output <- X[order(X$VariableB,X$VariableA),]
仅对VariableB
进行排序。 (附加信息:VariableA
和VariableB
都属于因素类型。
答案 0 :(得分:0)
您可以将第一个变量转换为“数字”,将第二个变量转换为order
中的“字符”,它应该可以正常工作
df1[order(as.character(df1$VariableB), as.numeric(as.character(df1$VariableA))),]
答案 1 :(得分:0)
使用dplyr包使用
arrange(x, VariabeB, VariableA)