[英]Sorting a character vector by numbers in parentheses
这些chr
必须进行排序:
files <- c("file (1).csv", "file (2).csv", "file.csv")
变成:
chr [1:3] "file.csv" "file (1).csv" "file (2).csv"
到目前为止,我已经找到了带有其mixedsort
和mixedorder
函数的gtools
软件包。 但是它们导致:
> library("gtools")
> mixedsort(files)
[1] "file (1).csv" "file (2).csv" "file.csv"
有什么办法解决我的问题吗?
我们可以使用sub
i1 <- as.numeric(gsub("\\D+", "", files))
files[order(!is.na(i1), i1)]
#[1] "file.csv" "file (1).csv" "file (2).csv"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.