我正在使用 BNlearn 包,运行测试时出现的错误是Error in check.data(x) :
variables must be either all real numbers or all factors.
. 我的数据框 ,EMG
包含两种类型的数值:
1)〜30000列值,其中许多是小数(我相信这些被解释为实数)。
2)〜450000列值为0、1或2。(我相信这些被解释为因素)。
我怎样才能让 R 相信类 2) 中的值是实数,而不是因数。另外,我可能以错误的方式接近错误。
数据由 129 行组成。数据示例如下。
9.758314 8.290852 0.03077250 0.353504 2 1
9.640181 8.581444 0.02144100 0.381118 0 0
8.898238 8.441256 0.01640670 0.574626 0 0
9.784328 8.406762 0.01525690 0.553795 1 1
11.017669 9.101037 0.01828330 0.489020 1 1
9.400396 8.073811 0.01897480 0.513596 0 0
在这个例子中,我相信前 4 列被解释为实数,而后两列被解释为因子。
当我将我正在使用的函数(gs,BNlearn 包的一部分)输入到 R 中时,这就是我得到的结果:
function (x, cluster = NULL, whitelist = NULL, blacklist = NULL,
test = NULL, alpha = 0.05, B = NULL, debug = FALSE, optimized = TRUE,
strict = FALSE, undirected = FALSE)
{
bnlearn(x = x, cluster = cluster, whitelist = whitelist,
blacklist = blacklist, test = test, alpha = alpha, B = B,
debug = debug, optimized = optimized, strict = strict,
undirected = undirected)
}
<environment: namespace:bnlearn>
谢谢!