我目前开始使用r包bnlearn。我想创建一些数据,为此,我想使用一些贝叶斯网络描述here。
我加载一个模型,然后尝试获取特定节点的分布(有条件或无条件)。我如何获得此信息?
我目前只看到网络的图形结构。
编辑:我正在使用Python库rpy2
import os
os.environ['R_HOME'] = r'C:\Program Files\R\R-4.3.2'
from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
bnlearn = importr('bnlearn')
# loading the model
robjects.r.load('./path/to/healthcare.rda')
df = robjects.globalenv['bn']
model = bnlearn.bn_net(df)
# model has a node 'A'
# I want to do something like
# bnlearn.distribution_of(model, 'A')
字符串
我是用r编程的新手,这可能是很糟糕的代码。
1条答案
按热度按时间smtd7mpg1#
我刚刚发现,概率分布是在 Dataframe (df)中描述的,而不是模型本身。