python求正态分布概率,用python创建100个服从正态分布的随机数

  python求正态分布概率,用python创建100个服从正态分布的随机数

  上一章我们介绍了多元随机变量的相关概念,重点介绍了多元随机变量的联合概率、条件和边际概率分布、独立性和相关性,阐述了多元随机变量之间的关系。这些都是多元随机变量需要关注和研究的关键问题。在上述理论知识的基础上,本节我们以多元正态分布为实际例子,以便更直观地理解和强化这些概念和方法。

  1.再谈相关性:基于多元正态分布。

  很简单,我们举个例子。在我们介绍随机变量的正态分布之前,这里我们先介绍多元随机变量的正态分布:

  如果向量$Z$由几个独立同分布的随机变量$Z_1,Z_2,Z_n$服从标准正态分布,那么我们说向量$Z$服从$n$元的标准正态分布。

  1.1.二元标准正态分布

  为了讨论方便,这里主要讨论二元随机变量的情况。在由随机变量$X$和$Y$组成的二元标准正态分布中,随机变量$X$和$Y$都服从均值为$0$、方差为$1$的标准正态分布,随机变量$X$和$Y$之间的协方差为$0$。协方差矩阵为$ \ begin { b matrix } 10 \ \ 01 \ end { b matrix } $。

  我们使用$python$生成服从二进制标准正态分布的随机变量$X$和$Y$并直观地观察它们。

  代码片段:

  将numpy作为np导入

  将matplotlib.pyplot作为plt导入

  进口海鲜

  seaborn.set()

  mean=np.array([0,0])

  conv=np.array([[1,0],

  [0, 1]])

  x,y=NP . random . multivariate _ normal(mean=均值,cov=conv,size=5000)。T

  plt.figure(figsize=(6,6))

  plt.plot(x,y, ro ,alpha=0.2)

  PLT . GCA()axes . set _ xlim(-4,4)。

  PLT . GCA()axes . set _ ylim(-4,4)。

  plt.show()

  在代码中,我们生成了二进制标准正态分布随机变量$X$和$Y$,它们各自的平均值为$0$,方差为$1$,协方差为$0$,并生成了总共$3,000 $组样本。让我们实际观察可视化结果。

  运行结果:

  图一。二元标准正态分布样本示意图

  从图中我们发现,在中值点附近(这里对应原点),样本出现的概率较高(我们设定的样本点的透明度为0.2美元,因此颜色越深,样本点的数量越多),而在远离中值点的地方,样本出现的概率较低,无论在任何方向,总体概率都没有太大的差异。

  1.2.二元一般正态分布

  通过调整参数,可以逐步将二元标准正态分布转化为二元一般正态分布。我们可以调整的参数主要包括以下三个方面:

  首先,调整多个随机变量的平均值,使整个样本在二维平面上平移。这个很简单,就不多说了。

  第二,调整随机变量$X$和$Y$的方差。当然,这个时候,我们仍然保持彼此独立的关系。我们来观察一下样本图像的特征。

  与标准的二元正态分布相比,我们将随机变量$X_2$的方差设为$4$,将$Y_2$的方差设为$0.25$。我们来对比观察一下:

  代码片段:

  将numpy作为np导入

  将matplotlib.pyplot作为plt导入

  进口海鲜

  seaborn.set()

  mean=np.array([0,0])

  conv_1=np.array([[1,0],

  [0, 1]])

  conv_2=np.array([[4,0],

  [0, 0.25]])

  x_1,y _ 1=NP . random . multivarial _ normal(mean=均值,cov=conv_1,size=3000)。T

  x_2,y _ 2=NP . random . multivarial _ normal(mean=均值,cov=conv_2,size=3000)。T

  plt.plot(x_1,y_1, ro ,alpha=0.05)

  plt.plot(x_2,y_2, bo ,alpha=0.05)

  PLT . GCA()axes . set _ xlim(-6,6)。

  PLT . GCA()axes . set _ ylim(-6,6)。

  plt.show()

  运行结果:

  2.独立二元非标准正态分布示意图

  从图中对比可以看出,蓝色样本点是随机变量方差调整后的样本分布,但随机变量$X$和$Y$之间的协方差保持在$0$。

  三是调整协方差。我们保持随机变量的方差不变。通过改变协方差的值,可以观察到协方差变换对随机变量间相关性的影响及其在图像上的反映。

  代码片段:

  将numpy作为np导入

  将matplotlib.pyplot作为plt导入

  进口海鲜

  seaborn.set()

  图,ax=plt.subplots(2,2)

  mean=np.array([0,0])

  conv_1=np.array([[1,0],

  [0, 1]])

  conv_2=np.array([[1,0.3],

  [0.3, 1]])

  conv_3=np.array([[1,0.85],

  [0.85, 1]])

  conv_4=np.array([[1,-0.85),

  [-0.85, 1]])

  x_1,y _ 1=NP . random . multivarial _ normal(mean=均值,cov=conv_1,size=3000)。T

  x_2,y _ 2=NP . random . multivarial _ normal(mean=均值,cov=conv_2,size=3000)。T

  x_3,y _ 3=NP . random . multivarial _ normal(mean=均值,cov=conv_3,size=3000)。T

  x_4,y _ 4=NP . random . multivarial _ normal(mean=均值,cov=conv_4,size=3000)。T

  ax[0][0]。绘图(x_1,y_1, bo ,alpha=0.05)

  ax[0][1]。绘图(x_2,y_2, bo ,alpha=0.05)

  ax[1][0]。绘图(x_3,y_3, bo ,alpha=0.05)

  ax[1][1]。绘图(x_4,y_4, bo ,alpha=0.05)

  plt.show()

  在代码中,我们生成了四组二元正态分布,第一组是二元标准正态分布用于比较。第二组的协方差为0.3美元,第三组的协方差为0.85美元,第四组的协方差为-0.85美元。

  运行结果:

  图3。相互关联的二元非标准正态分布对比图。

  从运行结果来看,我们发现协方差不为$0$的二元正态分布呈现出具有一定斜率的椭圆图像,协方差越大,椭圆越窄。

  同时协方差有正负,椭圆方向相反。这很好理解,分别反映了正相关和负相关。

  2.焦点相关系数

  有了生成多元正态分布随机变量的方法和可视化手段,让我们从定量的角度来回答上一节提到的问题:两个协方差大的随机变量之间的相关性是否一定大于协方差小的随机变量之间的相关性?

  让我们看看下面的代码:

  代码片段:

  ```

  将numpy作为np导入

  将matplotlib.pyplot作为plt导入

  进口海鲜

  seaborn.set()

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: