我对以下代码有些迷惑:
simula <- data.frame(
a=sample(c("b", "a"), 10, replace=TRUE),
b=sample(c("bb", "aa"), 10, replace=TRUE),
c=rnorm(10),
d=rnorm(10))
order(simula$a, simula$d, decreasing=c(T,F))
在order语句中出现错误,提示:
参数长度不同
这对我来说不太有意义。
有人能解释一下为什么会出现这个错误吗?
FALSE
和TRUE
,而不是F
和T
。请注意,F <- TRUE
是完全合法的。 - lmoorder(simula$a, simula$d, decreasing=TRUE)
将起作用。因此,很可能问题出在基数排序上,它是唯一接受多个参数进行降序排列的方法。 - lmostringsAsFactors = F
在排序时有点相当于使用as.character
。我知道如何修复错误,但我真正不理解的是它的原因是什么。 - rhg