【发布时间】:2022-01-01 21:51:47
【问题描述】:
我在 R 中有一个数据框,其中有一列由字母和数字组成(例如“A”、“B”、“1”、“2”等)。 我想以这样一种方式对数据框进行排序,即我首先有字母(按字母顺序排序),然后是数字(按数字排序)。理想情况下以一种整洁的方式,但不一定。
gtools::mixedsort 几乎可以满足我的要求,但将数字放在字符串之前,我认为没有一个参数可以让您将数字推到后面。
我考虑拆分数据框,分别对每个数据框进行排序,然后再次按行绑定。但我猜应该有更好的方法来做到这一点?
这也是进一步澄清我的问题的示例。
我有:
Col1 Col2 Col3
Apples A 90
Pears 12 90
Bananas C 50
Cake 1 50
Apples A 90
Pears B 90
Bananas 2 50
Cake 100 50
我试图实现的是按 Col2 排序,先按字母顺序,然后按数字:
Col1 Col2 Col3
Apples A 90
Apples A 90
Apples A 90
Apples A 90
Pears B 90
Bananas C 50
Cake 1 50
Bananas 2 50
Pears 12 90
Cake 100 50
非常感谢!
【问题讨论】: