我需要使用带有libpgm的朴素贝叶斯构建贝叶斯网络。 BN结构是已知的,因此我只需要使用libpgm.graphskeleton将其作为GraphSkeleton对象导入即可。
运行代码时,它给我以下错误:
Traceback (most recent call last):
File "C:\Users\X\Documents\Modelli Probabilistici\0-NEW\reteBayesiana1.py", line 3, in <module>
from libpgm.graphskeleton import GraphSkeleton
File "C:\Users\X\AppData\Local\Programs\Python\Python37-32\lib\site-packages\libpgm\graphskeleton.py", line 29, in <module>
from dictionary import Dictionary
<b>ModuleNotFoundError: No module named 'dictionary'</b>
我使用“ pip3 install libpgm”安装了库,安装过程中没有出现任何错误。
这是我的代码:
import libpgm
from libpgm.graphskeleton import GraphSkeleton
skel = GraphSkeleton()
skel.load("skeleton.txt")
...
我检查了我的库文件夹,并且libpgm似乎已正确安装,同时还存在一个“ graphskeleton.py”文件和一个“ dictionary.py”文件,它们似乎都具有所需的对象(GraphSkeleton和Dictionary,是“ graphskeleton.py”所必需的)