willdemon order()函数对factor的排序逻辑是什么呢? 随便写一个factor如下 f<-factor(x=c("a","a","d","f","a")) 得到factor有3个水平 [1] a a d f a Levels: a d f 对此factor运行order(),排除顺序为 order(f) [1] 1 2 5 3 4 不理解顺序是怎么计算出来的,d作为字母顺序在第二位,为什么排序排到末尾?而最后一个a 为什么排序到第4位?
s609078902 order() 的意思是排序后的元素原来排在第几位,跟是不是 factor 无关。比如,你的 f 用 sort() 排序后第三个元素是 a,它在 f 中是第五个元素。 f <- c("a", "a", "d", "f", "a") sort(f) [1] "a" "a" "a" "d" "f" order(f) [1] 1 2 5 3 4