is_d_separator#

is_d_separator(G, x, y, z)[source]#

返回节点集 xy 是否由 zG 中 d-分离。

Parameters:
Gnx.DiGraph

一个 NetworkX 有向无环图(DAG)。

x节点或节点集合

G 中的第一个节点或节点集合。

y节点或节点集合

G 中的第二个节点或节点集合。

z节点或节点集合

潜在的分离器( G 中的条件节点集合)。可以是空集。

Returns:
bbool

如果 x 在给定 z 的情况下与 yG 中 d-分离,则为 True 的布尔值。

Raises:
NetworkXError

d-分离测试通常用于有向无环图中不相交的节点集合。因此,如果节点集合不互斥或输入图不是 DAG,算法会引发 NetworkXError

NodeNotFound

如果输入节点中有任何一个在图中找不到,则会引发 NodeNotFound 异常。

Notes

DAG 中的 d-分离集是一组节点,它阻断了两个集合之间的所有路径。 z 中的节点如果它们是路径的一部分且不是碰撞节点,或者是碰撞节点的后代,则阻断路径。不在 z 中的碰撞节点也会阻断路径。路径上的碰撞结构是 ... -> c <- ... ,其中 c 是碰撞节点。

https://en.wikipedia.org/wiki/Bayesian_network#d-separation