NaiveBayesLner (Naive Bayes Learner). This class assumes a Naive Bayes
structure without any regard for the data in states_df. This means it
assumes a tree structure with arrows radiating from the specified target
vertex to all other vertices mentioned in the list of column labels of
states_df.
Although ``naive", this model is often sufficiently good for
classification purposes. In such problems, the non-target node names (
column labels of dataframe) are called ``features" and the states of the
target node are called ``classes" of the ``classifier"
Attributes
----------
is_quantum : bool
True for quantum bnets amd False for classical bnets
bnet : BayesNet
a BayesNet in which we store what is learned
states_df : pandas.DataFrame
a Pandas DataFrame with training data. column = node and row =
sample. Each row/sample gives the state of the col/node.
ord_nodes : list[DirectedNode]
a list of DirectedNode's named and in the same order as the column
labels of self.states_df.
tar_vtx : str
The name of the node that will assume the role of ``target" or
center of the graph.