【发布时间】:2019-07-16 03:03:39
【问题描述】:
我正在为布尔网络建模项目创建二进制真值表的输入结构。网络中大小为 n 的每个节点可能有不同数量的输入 k,从而产生不同维度的真值表。
我正在使用以下代码:
replicate(n, expand.grid(rep(list(0:1),times=k)), simplify=FALSE)
如果 n 和 k 具有固定值,则可以正常工作。
例如,在 n = 3 和 k = 2 的情况下,我得到三个 0 和 1 的 4x4 矩阵。这是一个有用的结果。
我的目标是做一些类似的事情,将固定的 k 替换为长度为 n 的数值向量,这样向量中的每个元素都代表 a 中输入的数量对应的网络节点。
例如,如果 n = 3 和 x <- c(2, 3, 2),我会将 x 作为参数传递,输出将是 3 个尺寸为 4x4、8x8 和 4x4 的矩阵。
使用我现有的代码,当我将 k 定义为向量并尝试将其用作 times 参数时,我发现它无效。
【问题讨论】:
标签: r boolean truthtable rep