![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
bnlearn
Rilkean heart
Fail Again. Fail Better
展开
-
17. R语言错误Error in data.type(x) : variable A is not supported in bnlearn (type: integer).
这个错误是这样出现的:我简简单单读取一个数据的csv文件,又简简单单的调用一个函数(bnlearn包中的打分函数)。mydata = read.csv("C:\\Users\\Administrator\\Desktop\\1.csv",header=TRUE)s<-score(g,mydata,score="bic-g")然后就报错:Error in data.type(x)...原创 2020-04-16 23:17:16 · 2690 阅读 · 0 评论 -
16. R的bnlearn包中的score函数的探究
这里从代码的角度探索一下score函数,再寻找一些关于bic的代码内容。源代码来自R的bnlearn包bnlearn的score是经常用到的一个函数,它是对网络整体打分:example.score[i] = score(network.temp,x,type = “bic”) # 默认是bic类型注意打分有离散和连续(以及混合)之分,以bic为例,离散是“bic”,连续是“bic-...原创 2020-03-24 23:56:44 · 2391 阅读 · 0 评论 -
15. R的bnlearn包中的per.node.score函数的学习探究
0. 写在前面原来只知道per.node.score是对贝叶斯网络单个节点进行打分,具体实现从来没有触及过,最近终于努力摁着头学习了一下。诸多不足,欢迎交流。此文比较适合有一定使用bnlearn包基础以及C语言基础并且也为这个函数的机理头疼的人观看本文使用的数据是一种n*n的基因表型数据,暂把它理解为列名和行名都表示基因,不理解数据不影响阅读。csdn竟然不支持R代码的高亮,故用pyth...原创 2020-03-24 10:40:54 · 1007 阅读 · 7 评论 -
14. Bayesian Networks With Examples in R的学习笔记(贝叶斯网络 bic打分相关)
bnlearn官网推荐书目《Bayesian Networks With Examples in R》,下载了英文版pdf学习了一下,书还是比较浅显易懂的,没有读多少,暂时把自己看的部分整理+翻译到这里留存。欢迎大家交流〇、 pdf下载地址http://www.allitebooks.org/Jesus!这么好的网站我怎么没有早点遇到!里面有各种各样的Turing或者O’Reilly出版社的...原创 2020-02-12 00:31:19 · 1548 阅读 · 7 评论 -
13. R语言:Error in match.names(clabs, names(xi)) : 名字同原来已有的名字不相对
问题描述count_bind = rbind(count_left,count_right)Error in match.names(clabs, names(xi)) : 名字同原来已有的名字不相对原因探究这个是在rbind时出现的match.names函数中的问题,原因很简单,因为一开始我的两个待rbind的对象的列名不一样:解决问题手动更改列名后可解决问题:colnam...原创 2020-01-04 17:07:19 · 17539 阅读 · 0 评论 -
12. missForest填补缺失值的理解以及行列值的意义
1.一开始和学姐联系了关于rfImpute的函数参数问题,但是当时她在老家没带电脑,我就自己再国内论坛各种翻没找到,又去谷歌上找,在别家论坛上发现这个网站上有人评论说自己用的是一个填补方法叫missForest:https://stats.stackexchange.com/questions/226803/what-is-the-proper-way-to-use-rfimpute-imput...原创 2019-12-26 19:21:00 · 3627 阅读 · 0 评论 -
11. c语言的log是以e为底的!
C中log默认的是以e为底,这一点之前没有注意,网上一些关于互信息的讲解都默认以2为底(便于理解,单位是bit),以e为底和以2为底它们的区别主要是单位(意义不太一样),但是相对大小不会改变。...原创 2019-12-26 19:16:58 · 4047 阅读 · 0 评论 -
10. bnlearn包中score的打分类型bic和bic-g的区别
bic-g 表示连续打分,bic是离散(但是也能打连续函数)就这点区别,不影响,至少在我的数据集上都不影响原创 2019-12-26 19:00:46 · 966 阅读 · 0 评论 -
9. R语言学习或者贝叶斯学习比较好的资源网站
随手记录好网站http://adv-r.had.co.nz/是关于R语言的一些比较高级的用法,其中http://adv-r.had.co.nz/C-interface.html 是对R语言的C接口的一个比较详细的介绍,帮了很多忙!R和C接口的问题太难百度了!这个网站可以很好的入门!...原创 2019-12-26 18:56:32 · 682 阅读 · 0 评论 -
8. 关于打分函数F1分数 TPR PPV等
总结至https://blog.csdn.net/qq_21997625/article/details/798534831.PPV=nrow(tp)/(nrow(tp)+nrow(fp)) #wyj:precision精度(准确率),是精确性的度量,预测为正的样本中有多少预测对了。 (分母是预测结果总边数)2.TPR=nrow(tp)/(nrow(tp)+nrow(fn)) #wyj...原创 2019-12-26 18:43:56 · 1261 阅读 · 0 评论 -
7.R语言取数组元素出现NA的一种可能原因 A.K.A. R语言的括号与运算优先级的一个教训
问题描述哎呀坑死了谁能想到取数组元素出现NA是因为没加括号for(i in 1:len*len) #这种情况是错误的!!for(i in 1:(len*len)) #这种情况就对了!!多么痛的领悟 QAQ 我再也不省括号了...原创 2019-12-26 18:28:24 · 1537 阅读 · 0 评论 -
6. bnlearn包中的score函数的 the variables in the data and in the network do not match
问题描述实际上这个问题应该是这样的:首先出现了这个错误:cache是一个n*n的数组,存的是score函数的打分分数(bic打分)意思是说这个打分的cache里找不到它想要的数值,我去看了cache的输出发现不管是对单个节点的打分还是对边的打分,都出现了负无穷-Inf这样一种情况:对节点:对边:·所以我们又重新打了一遍分数,出错如下:最后发现是,分数为-Inf的节点,原数据...原创 2019-12-26 18:22:26 · 340 阅读 · 0 评论 -
5. R的bnlearn包中的 amat() = 和 = amat()
amat()函数的细节R的bnlearn包中的 amat() = 和 = amat()amat(chowliu.start) = chowliu.amat #wyj:把amat赋给start chowliu.amat = amat(chowliu.start)#wyj:把start赋给amatR对于这个函数的文档的介绍真的不详细····绕了好多弯路···谁能想到竟然还能这样用呢欢...原创 2019-12-26 18:12:51 · 449 阅读 · 2 评论 -
4. R的矩阵如何通过列名(行名)调用某一列(某一行) a.k.a. chowliu.amat[,”N96”] 找不到该列怎么办
这个问题是我写csdn的初衷,遇到过2次,在自己广袤且混乱的工作报告中找半天找不到解决方法,而且百度谷歌了底朝天也没有解决方法,果然还是要靠自己 QAQ分享给大家,希望大家少走一些弯路我用的包是R中的bnlearn包的chowliu算法,算法不重要,重点是R的矩阵如何通过列名(行名)调用某一列(某一行) 。问题描述:chowliu.amat是一个矩阵,现在我想单独取出这个矩阵的某一列,但是...原创 2019-12-26 12:54:19 · 1525 阅读 · 0 评论 -
3. INTEGER() can only be applied to a 'integer' , not a 'double'
用过R处理数据的谁还没碰到过这个问题 QAQINTEGER() can only be applied to a ‘integer’ , not a ‘double’解决方案:必须把矩阵里的数赋值时都写成xxxx <- 0L这种类型,而不是直接写个0,如下对比了3种不同的赋值方法的值的类型:原因:因为R中0L表的是向量,当你需要一个向量,或者整数类型的话,而且integer占...原创 2019-12-26 12:44:17 · 929 阅读 · 0 评论