我在R中有一个字符串向量,它遵循以下格式:1:A
。所以,让我说我有一个带字符串的向量
x = c("1:A", "201:A", "2:A")
我想对此向量进行排序,使其变为
["1:A" "2:A" "201:A"]
R中是否有能够实现此功能的功能?我试过了
mixedsort(x, decreasing = FALSE)
来自gtools
库的,但是当此向量按比例放大以包含字母B
时,它似乎仍然无法正常工作。有什么想法吗?
答案 0 :(得分:3)
一个选项是mixedsort
library(gtools)
mixedsort(x)
#[1] "1:A" "2:A" "201:A"
或者使用gsub
和order
x[order(as.numeric(gsub("\\D+", "", x)))]
#[1] "1:A" "2:A" "201:A"