数字列
如果索引是数字,可以按照其中一列或几列的值大小进行排序
set.seed(13)
data <- data.frame(
test = paste0("test", sample(seq(1:20), size = 20, replace = FALSE)),
city = rep(c("Chengdu", "Beijing", "Shanghai", "Xiamen"), times = 5),
value = runif(20),
order = sample(seq(1:20), size = 20, replace = FALSE)
)
order(){base} 行号不变
data[order(data$order, decreasing = T),]
arrange(){dplyr} 行号变化
data %>% arrange(order)
forcats 分类变量的处理工具
面对大量数据的时候,forcats是R中比较好的因子处理工具。基本功能:
- fct_reorder(): 通过一列中,从上到下出现的顺序排序
- fct_infreq(): 通过频率进行排序
- fct_relevel(): 手动档
- fct_reorder():通过另外的值进行因子排序
- fct_reorder2()
- fct_anon():忽略因子水平
- character() {base}:factor 转换为字符串
查看:help(forcats)
字符中夹杂的数字排序
strings 中的 number
data[str_order(data$test, numeric = T, decreasing = F), ]