首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bnlearn就地设置和删除圆弧

bnlearn就地设置和删除圆弧
EN

Stack Overflow用户
提问于 2018-02-08 15:19:14
回答 1查看 303关注 0票数 2

看看http://www.bnlearn.com/documentation/man/arcops.html,删除弧线的方法是使用drop.arcs函数。

但它似乎并没有放弃它

代码语言:javascript
复制
library(bnlearn)
data(learning.test)
res = gs(learning.test)

arcs(res)
     from to 
[1,] "A"  "B"
[2,] "A"  "D"
[3,] "B"  "A"
[4,] "B"  "E"
[5,] "C"  "D"
[6,] "F"  "E"

drop.arc(res, "A", "B")
arcs(res)
     from to 
[1,] "A"  "B"
[2,] "A"  "D"
[3,] "B"  "A"
[4,] "B"  "E"
[5,] "C"  "D"
[6,] "F"  "E"

但在调试日志中,它似乎起作用了。

代码语言:javascript
复制
drop.arc(res, "A","B",debug=T)
* dropping any arc between  A and B .
  > dropping any arc between A and B .
* (re)building cached information about node A.
* node A.
  > found child D.
  > found node C in markov blanket.
  > node A has 0 parent(s), 1 child(ren), 1 neighbour(s) and 2 nodes in the markov blanket.
...

这是R3.4.3的问题吗?如何在检查循环时使用圆弧操作?我可以随时替换res$arcs表,但我希望能够检查周期。

代码语言:javascript
复制
> version
               _                           
platform       x86_64-apple-darwin15.6.0   
arch           x86_64                      
os             darwin15.6.0                
system         x86_64, darwin15.6.0        
status                                     
major          3                           
minor          4.3                         
year           2017                        
month          11                          
day            30                          
svn rev        73796                       
language       R                           
version.string R version 3.4.3 (2017-11-30)
nickname       Kite-Eating Tree     
> packageVersion('bnlearn')
[1] '4.3'
EN

回答 1

Stack Overflow用户

发布于 2021-08-20 18:22:53

?drop.arcs的帮助页面显示

“所有函数都以不可见的方式返回x的更新副本。”

你必须将函数调用的结果赋给一个对象。所以试一试

代码语言:javascript
复制
res2 = drop.arc(res, "A", "B") 
arcs(res2)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48679722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档