R中的所有二进制序列

时间:2016-10-19 16:38:38

标签: r binary

我试图编写一个递归函数,它将整数n作为输入,并返回一个包含所有长度为n的二进制序列的矩阵。 我写了这段代码,但它没有给出输出

binseq <- function(n){
binsequ <- matrix(nrow = length(n), ncol = n)
r <- 0 # current row of binseq
for (i in 0:n) {
for (j in 0:n) {
for (k in 0:n) {
r <- r + 1
return (binsequ[r,] <- c(i, j, k))
}
}
}
}

我尝试使用n = 3

运行它
binseq(3)

但没有成功。 但是,当我不使用函数命令并给出具体数字时,它可以工作。例如,

binseq <- matrix(nrow = 8, ncol = 3)
r <- 0 # current row of binseq
for (i in 0:1) {
for (j in 0:1) {
for (k in 0:1) {
r <- r + 1
binseq[r,] <- c(i, j, k)
}
}
}
binseq

输出是:

     [,1] [,2] [,3]
[1,]    0    0    0
[2,]    0    0    1
[3,]    0    1    0
[4,]    0    1    1
[5,]    1    0    0
[6,]    1    0    1
[7,]    1    1    0
[8,]    1    1    1

0 个答案:

没有答案