Python 将二维阵列的元素与两个一维阵列的乘积进行比较?

Python 将二维阵列的元素与两个一维阵列的乘积进行比较?,python,arrays,statistics,probability-density,Python,Arrays,Statistics,Probability Density,我试图将二维数组与两个一维数组的乘积(联合概率密度与其各自概率密度的乘积)进行比较,以确定变量x和y是否独立,其中独立性表示为ρ(x,y)=ρ(x)*ρ(y) 假设我调用了2D数组h,1D列表n和m。我如何遍历h来检查它的元素是否等同于n*m?要测试精确的相等性,只需使用np.all() 将numpy导入为np m=np.rand.rand(10) n=np.rand.rand(20) h=m.重塑(1,-1)*n.重塑(-1,1) 打印(np.all(h==m.reformate(1,-1)*

我试图将二维数组与两个一维数组的乘积(联合概率密度与其各自概率密度的乘积)进行比较,以确定变量x和y是否独立,其中独立性表示为
ρ(x,y)=ρ(x)*ρ(y)


假设我调用了2D数组
h
,1D列表
n
m
。我如何遍历
h
来检查它的元素是否等同于
n*m

要测试精确的相等性,只需使用
np.all()

将numpy导入为np
m=np.rand.rand(10)
n=np.rand.rand(20)
h=m.重塑(1,-1)*n.重塑(-1,1)
打印(np.all(h==m.reformate(1,-1)*n.reformate(-1,1))#真
要测试数字是否全部接近,可以使用:

print(np.all(np.isclose(h, m.reshape(1, -1) * n.reshape(-1, 1))))

可能构造出
n
m
的笛卡尔积(可能有一个numpy函数),然后看
h
减去该积。但是,如果你需要量化依赖程度,请查看相互信息。网络搜索应该能找到一些资源。