我正在Windows 10中将软件包安排v1.1.5与R v3.5.3一起使用。 而且我认为我发现了一个奇怪的错误,或者我做错了什么。
这正在工作
library(arrangements)
myDF <- data.frame(A=c("a","b","c"), B=c(2000,2000,2002))
tapply(myDF$A,myDF$B, permutations)
$`2000`
[,1] [,2]
[1,] a b
[2,] b a
Levels: a b c
$`2002`
[,1]
[1,] c
Levels: a b c
但这不起作用:
library(arrangements)
myDF <- data.frame(A=c(200,200,200), B=c(0,0,2))
tapply(myDF$A,myDF$B, permutations)
Error in FUN(X[[i]], ...) : too many results
我做错了什么?
我只想生成由组B定义的A元素的排列。
结果应类似于前面的示例,但用数字而不是字母。
答案 0 :(得分:3)
在?permutations
处查看文档。请注意,第一个参数描述为
x-整数或向量,如果为整数,则将被视为
n
;否则,将被视为v
因此,如果您输入数字或因子,则函数的行为会有所不同。如果您希望像第一个示例一样从中提取这些值,则只需将值直接传递到v=
参数即可。
tapply(myDF$A, myDF$B, function(x) permutations(v=x))