Probability 定义依赖于单个条件的两个随机变量

Probability 定义依赖于单个条件的两个随机变量,probability,sympy,Probability,Sympy,在sympy中,如何定义两个随机变量X和Y,它们依赖于一个公共条件?例如,如何解决以下问题: 我们掷骰子。如果它落在1上,那么X=1,Y=0。如果它落在2上,那么X=0,Y=1。否则,X=Y=0。X,Y的协方差是多少 如果X和Y是某个Z的函数,那么创建Z并通过它定义X,Y分段有助于: from sympy.stats import * Z = Die("Z", 6) X = Piecewise((1, Eq(Z, 1)), (0, True)) Y = Piecewise((1, Eq(Z,

在sympy中,如何定义两个随机变量X和Y,它们依赖于一个公共条件?例如,如何解决以下问题:

  • 我们掷骰子。如果它落在1上,那么X=1,Y=0。如果它落在2上,那么X=0,Y=1。否则,X=Y=0。X,Y的协方差是多少

如果X和Y是某个Z的函数,那么创建Z并通过它定义X,Y<代码>分段有助于:

from sympy.stats import *
Z = Die("Z", 6)
X = Piecewise((1, Eq(Z, 1)), (0, True))
Y = Piecewise((1, Eq(Z, 2)), (0, True))
print(covariance(X, Y))  # -1/36

旁白:如果Y是X的函数,那么首先创建X,然后根据它定义Y

from sympy.stats import Bernoulli, covariance
X = Bernoulli("X", 1/6)
Y = 1 - X
print(covariance(X, Y))

返回值-0.138888889。

我更新了答案;SymPy现在更擅长这些计算,因此不需要使用插值_poly的解决方法。