R 由因子和实数组成的数据帧
我正在使用BNlearn软件包,运行测试时出现的错误是check.data(x)中的R 由因子和实数组成的数据帧,r,R,我正在使用BNlearn软件包,运行测试时出现的错误是check.data(x)中的error: 变量必须是所有实数或所有因子。。我的数据帧,EMG,包含两种类型的数值: 1) 大约30000列值,其中许多是小数(我相信这些被解释为实数) 2) 约450000列值,它们可以是0、1或2。(我认为这些被解释为因素) 我怎样才能让R相信2)类中的值是实数,而不是因子。此外,我可能以错误的方式处理错误 数据由129行组成。下面是一个数据示例 9.758314 8.290852 0.03
error:
变量必须是所有实数或所有因子。
。我的数据帧,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列被解释为实数,而后两列被解释为因子
当我在R中输入我正在使用的函数(gs,BNlearn包的一部分)时,我得到的是:
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>
函数(x,cluster=NULL,whitelist=NULL,blacklist=NULL,
test=NULL,alpha=0.05,B=NULL,debug=FALSE,optimized=TRUE,
严格=错误,无向=错误)
{
bnlearn(x=x,cluster=cluster,whitelist=whitelist,
黑名单=黑名单,测试=测试,α=α,B=B,
调试=调试,优化=优化,严格=严格,
无向的(无向的)
}
谢谢 您可以这样做:
matrix(as.numeric(as.matrix(EMG)),ncol=ncol(EMG),byrow=TRUE)
as.matrix
将返回一个字符矩阵、as.numeric
一个数字向量和matrix
以恢复原始结构。您能提供您正在使用的代码吗(甚至可能是一个可复制的示例)?您有多少行?看起来它可以工作,我只是使用as.data.frame将矩阵转换回数据帧形式。谢谢