在R中排序时的奇怪行为
我对以下代码有点迷茫:在R中排序时的奇怪行为,r,sorting,R,Sorting,我对以下代码有点迷茫: 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)) simulastringsAsFactors=F应能解决以下问题: simula <
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))
simulastringsAsFactors=F
应能解决以下问题:
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), stringsAsFactors = FALSE)
order(simula$a, simula$d, decreasing=c(TRUE, FALSE))
simulaFALSE
和TRUE
优于F
和T
。请注意,F您的解决方案有效,但请注意,order(simula$a,simula$d,discreating=TRUE)
在a和b为因子时有效。所以,最有可能的问题是基数排序的问题,这是唯一一种接受多个参数的向量进行递减的方法。非常感谢。然而,在排序时使用stringsAsFactors=F
相当于使用as.character
。我知道如何修复错误,但我不知道是什么导致了错误。