class TestHyBayesianNetwork(unittest.TestCase): def setUp(self): self.nd = HybridNodeData.load("unittesthdict.txt") self.nd.entriestoinstances() self.skel = GraphSkeleton() self.skel.load("unittestdict.txt") self.skel.toporder() self.hybn = HyBayesianNetwork(self.skel, self.nd) def test_randomsample(self): sample = self.hybn.randomsample(1)[0] self.assertTrue(isinstance(sample['Grade'], float)) self.assertTrue(isinstance(sample['Intelligence'], str)) self.assertEqual(sample["SAT"][-12:], 'blueberries!')
nd = NodeData() skel = GraphSkeleton() nd.load("../tests/unittesthdict.txt") skel.load("../tests/unittestdict.txt") # topologically order graphskeleton skel.toporder() # convert nodes to class instances nd.entriestoinstances() # load bayesian network hybn = HyBayesianNetwork(skel, nd) # sample result = hybn.randomsample(10) # output - toggle comment to see #print json.dumps(result, indent=2) # (4) ------------------------------------------------------------------------ # Generate a sequence of samples from a discrete-CPD Bayesian network, given evidence # load nodedata and graphskeleton nd = NodeData() skel = GraphSkeleton() nd.load("../tests/unittestdict.txt") skel.load("../tests/unittestdict.txt") # toporder graph skeleton skel.toporder()