对于联合分布律为

的2-维离散型随机向量(X,Y)(X,Y)(X,Y),其函数g(X,Y)g(X,Y)g(X,Y)的数学期望E(g(X,Y))=∑i=1m∑j=1ng(xi,yj)pijE(g(X,Y))=\sum\limits_{i=1}^m\sum\limits_{j=1}^ng(x_i,y_j)p_{ij}E(g(X,Y))=i=1∑m​j=1∑n​g(xi​,yj​)pij​是2-维数组(g(x1,y1)g(x1,y2)⋯g(x1,yn)g(x2,y1)g(x2,y2)⋯g(x2,yn)⋮⋮⋯⋮g(xm,y1)g(xm,y2)⋯g(xm,yn))\begin{pmatrix}g(x_1,y_1)&g(x_1,y_2)&\cdots&g(x_1,y_n)\\g(x_2,y_1)&g(x_2,y_2)&\cdots&g(x_2,y_n)\\\vdots&\vdots&\cdots&\vdots\\g(x_m,y_1)&g(x_m,y_2)&\cdots&g(x_m,y_n)\end{pmatrix}⎝⎜⎜⎜⎛​g(x1​,y1​)g(x2​,y1​)⋮g(xm​,y1​)​g(x1​,y2​)g(x2​,y2​)⋮g(xm​,y2​)​⋯⋯⋯⋯​g(x1​,yn​)g(x2​,yn​)⋮g(xm​,yn​)​⎠⎟⎟⎟⎞​和(p11p12⋯p1np21p22⋯p2n⋮⋮⋯⋮pm1pm2⋯pmn)\begin{pmatrix}p_{11}&p_{12}&\cdots&p_{1n}\\p_{21}&p_{22}&\cdots&p_{2n}\\\vdots&\vdots&\cdots&\vdots\\p_{m1}&p_{m2}&\cdots&p_{mn}\end{pmatrix}⎝⎜⎜⎜⎛​p11​p21​⋮pm1​​p12​p22​⋮pm2​​⋯⋯⋯⋯​p1n​p2n​⋮pmn​​⎠⎟⎟⎟⎞​按元素相乘所得2-维数组(g(x1,y1)p11g(x1,y2)p12⋯g(x1,yn)p1ng(x2,y1)p21g(x2,y2)p22⋯g(x2,yn)p2n⋮⋮⋯⋮g(xm,y1)pm1g(xm,y2)pm2⋯g(xm,yn)pmn)\begin{pmatrix}g(x_1,y_1)p_{11}&g(x_1,y_2)p_{12}&\cdots&g(x_1,y_n)p_{1n}\\g(x_2,y_1)p_{21}&g(x_2,y_2)p_{22}&\cdots&g(x_2,y_n)p_{2n}\\\vdots&\vdots&\cdots&\vdots\\g(x_m,y_1)p_{m1}&g(x_m,y_2)p_{m2}&\cdots&g(x_m,y_n)p_{mn}\end{pmatrix}⎝⎜⎜⎜⎛​g(x1​,y1​)p11​g(x2​,y1​)p21​⋮g(xm​,y1​)pm1​​g(x1​,y2​)p12​g(x2​,y2​)p22​⋮g(xm​,y2​)pm2​​⋯⋯⋯⋯​g(x1​,yn​)p1n​g(x2​,yn​)p2n​⋮g(xm​,yn​)pmn​​⎠⎟⎟⎟⎞​的元素之和。
将上述计算方法写成计算数学期望的函数

def expect(P, Xv=None, Yv=None, func=lambda x, y: x):stru=P.shape                                #获取P的结构arrayType=type(np.array([]))                #数组类型if (len(stru)>1) and (type(Xv)==arrayType): #2维向量且需计算XXv=Xv.reshape(Xv.size,1)if type(Yv)==arrayType:                     #2维向量且需计算YYv=Yv.reshape(1, Yv.size)mean=(func(Xv,Yv)*P).sum()                  #计算期望return mean

函数expect的4个参数中P表示分布律中的概率序列。Xv和Yv分别表示随机变量XXX和YYY的取值序列,缺省为None。func表示函数关系Z=g(X,Y)Z=g(X,Y)Z=g(X,Y),缺省值为函数g(X,Y)=Xg(X,Y)=Xg(X,Y)=X。第2行读取表示概率序列的数组P的结构,P.shape是一个元组,其长度大于1表示P是一个矩阵。第3行获取numpy的数组类型,记为arrayType,若参数Xv或Yv传递的是数组,则其类型type(Xv)(或type(Yv))就与arrayType一致。第4~5行的if语句对2-维随机向量(len(stru)>1)且需计算XXX期望(type(Xv)==arrayType)的情形,将Xv设置成m×1m\times1m×1的列向量,以保证矩阵按元素计算的正确性。出于同样的目的,第6~7行的if语句对需要计算YYY的期望(此时,P一定是2-维数组),将Yv设置成1×n1\times n1×n的行向量。第8行将数组func(Xv,Yv)*P元素之和(func(Xv,Yv)*P).sum()记为返回值mean。第9行将计算结果返回。
例1 设(X,Y)(X, Y)(X,Y)的联合分布律为

计算E(X)E(X)E(X),E(Y)E(Y)E(Y)和E(X3Y2)E(X^3Y^2)E(X3Y2)。
解: 为计算E(X)E(X)E(X)和E(Y)E(Y)E(Y),先计算XXX,YYY的边缘分布。不难解得XXX~(015838)\begin{pmatrix}0&1\\\frac{5}{8}&\frac{3}{8}\end{pmatrix}(085​​183​​),YYY~(123382838)\begin{pmatrix}1&2&3\\\frac{3}{8}&\frac{2}{8}&\frac{3}{8}\end{pmatrix}(183​​282​​383​​)。所以
E(X)=0×58+1×38=38E(X)=0\times\frac{5}{8}+1\times\frac{3}{8}=\frac{3}{8}E(X)=0×85​+1×83​=83​,
E(Y)=1×38+2×28+3×38=2E(Y)=1\times\frac{3}{8}+2\times\frac{2}{8}+3\times\frac{3}{8}=2E(Y)=1×83​+2×82​+3×83​=2。
为计算E(X3Y2)E(X^3Y^2)E(X3Y2),可以运用先计算Z=X3Y2Z=X^3Y^2Z=X3Y2的分布律,然后计算E(Z)E(Z)E(Z)。根据(X,Y)(X,Y)(X,Y)的联合分布律,不难算得ZZZ~(014954181818)\begin{pmatrix}0&1&4&9\\\frac{5}{4}&\frac{1}{8}&\frac{1}{8}&\frac{1}{8}\end{pmatrix}(045​​181​​481​​981​​)。于是E(X3Y2)=E(Z)=0×54+1×18+4×18+9×18=74E(X^3Y^2)=E(Z)=0\times\frac{5}{4}+1\times\frac{1}{8}+4\times\frac{1}{8}+9\times\frac{1}{8}=\frac{7}{4}E(X3Y2)=E(Z)=0×45​+1×81​+4×81​+9×81​=47​。下列代码验算本例计算结果。

import numpy as np                      #导入numpy
from sympy import Rational as R         #导入Rational
X=np.array([0, 1])                      #设置X取值
Y=np.array([1, 2, 3])                   #设置Y取值
Pxy=np.array([[R(1,4), R(1,8), R(1,4)], #设置分布律中概率矩阵[R(1,8), R(1,8), R(1,8)]])
meanx=expect(Pxy, X)                    #计算E(X)
g=lambda x, y: y                        #设置函数g(X,Y)=Y
meany=expect(Pxy, Yv=Y, Py)             #计算E(Y)
g=lambda x, y: (x**3)*(y**2)            #设置函数g(X, Y)=X^3Y^2
mean=expect(Pxy, X, Y, g)               #计算E(X^3Y^2)
print('E(X)=%s'%meanx)
print('E(Y)=%sf'%meany)
print('E(X^3Y^2)=%s'%mean)

程序中第3~6行设置(X,Y)(X,Y)(X,Y)的联合分布律。第7行调用函数expect,传递参数Pxy和X计算XXX的边缘分布的期望E(X)E(X)E(X),记为meanx。为计算YYY的边缘分布期望E(Y)E(Y)E(Y),第8行设置函数g(X,Y)=Yg(X,Y)=Yg(X,Y)=Y,第9行调用函数expect传递参数Pxy,Y和g,计算结果记为meany。第10行定义函数g(x,y)=x3y2g(x,y)=x^3y^2g(x,y)=x3y2,第11行调用函数expect传递参数Pxy,X,Y和g计算E(X3Y2)E(X^3Y^2)E(X3Y2),记为mean。运行程序,输出

E(X)=3/8
E(Y)=2
E(X^3Y^2)=7/4

写博不易,敬请支持:
如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!
返回《导引》

概率统计Python计算:离散型自定义分布数学期望的计算(二)相关推荐

  1. 概率统计Python计算:离散型自定义分布数学期望的计算(一)

    对非经典分布的随机变量,当然可以按博文<自定义离散型分布>中介绍的方法,自定义rv_discrete(离散型)或rv_continuos(连续型)的子类(详见博文<自定义连续型分布& ...

  2. 概率统计Python计算:协方差与相关系数计算

    我们知道,若随机向量(X,Y)(X,Y)(X,Y)存在E(X)E(X)E(X),E(Y)E(Y)E(Y),E(XY)E(XY)E(XY),则存在(X,Y)(X,Y)(X,Y)的协方差Cov(Y,X)\ ...

  3. 概率统计Python计算:离散型随机变量分布(bernoulli geom)

    Python的scipy.stats包中提供了各种随机变量的分布.每一种分布,其累积分布函数(分布函数)记为cdf.离散型变量分布的概率质量函数(分布律),记为pmf.除此之外,每个分布都有一个服从该 ...

  4. 概率统计Python计算:条件概率和概率乘法公式

    1. 古典概型中条件概率的计算 条件概率 P ( B ∣ A ) P(B|A) P(B∣A)是将样本空间限制在 A A A上, A ∩ B A\cap B A∩B的概率.因此,我们可以利用博文< ...

  5. 概率,随机变量,离散型连续型,边缘分布

    引入 今天做一道题,已知联合分布函数求边缘密度函数,这个二维随机变量是符合均匀分布的,并且给出了X,Y区间也就是分布区域D,这道题解题思路很简单,因为有公式可以套 解题思路: 首先根据二维随机变量均匀 ...

  6. 离散型最值的期望计算

    离散型最值的期望计算 @(概率论) 不同于连续型,可以将问题归结为E|X-Y|的计算.离散型的期望值计算可以通过离散的划分来求解. 比如: 设X,Y相互独立同分布,均服从几何分布P(X=k)=qk−1 ...

  7. 概率统计Python计算:自定义离散型分布

    假定有自定义的分布数据(X, P),其中X表示随机变量XXX的取值序列,P表示对应XXX的每个取值的概率序列.scipy.stats包为我们提供了一个rv_discrete类,可以用数据(X, P)创 ...

  8. 概率统计Python计算:随机变量的分布函数

    任何随机变量XXX都有其分布函数(或称为累积分布函数) F(x)=P(X≤x),x∈(−∞,+∞).F(x)=P(X\leq x), x\in (-\infty,+\infty).F(x)=P(X≤x ...

  9. 概率统计Python计算:单个正态总体均值单侧假设的Z检验

    对正态总体参数的单侧假设检验,可以用如下的p值法进行.设显著水平为α\alphaα,考虑假设H0H_0H0​的右侧检验.首先,注意到检验统计量的分布对应显著水平α\alphaα的右分位点bbb,实际上 ...

最新文章

  1. R语言eval函数评估表达式或者字符串实战
  2. OSChina 周一乱弹 ——渴望咪咪还是渴望力量,都能给你
  3. simulink m序列仿真(待验证)
  4. 桁架工业机器人编程_工业机器人之桁架机器人
  5. java如何获得当前文件路径
  6. Oracle入门(十三A1)之替换变量,变量名,变量名
  7. wordpress后台添加子菜单 add_submenu_page()
  8. SpatiaLite空间索引(一)
  9. USACO1.1.1 - PROB Your Ride Is Here
  10. 游戏筑基开发之单链表及其增删改查(C语言)
  11. 动态规划时间复杂度_算法分析与设计之动态规划
  12. Memcached笔记——(四)应对高并发攻击【转】
  13. c++修复工具_别再花钱修复旧照片啦!老照片一键修复工具,独创方法支持PS2020...
  14. java飞机大战小游戏
  15. php本地打开pdf文件_用PHP在web浏览器中打开PDF文件的方法
  16. 装机软件搜狗拼音输入法v11.5.0.5352去广告精简优化版
  17. VB类计算机专业毕业设计题目
  18. Spark ML 构建回归模型
  19. html设置字号为五号,怎么将公式编辑器里面编辑的公式大小设置为5号宋体
  20. R语言入门——不掉包实现FNN(单层感知机)

热门文章

  1. iOS 百度地图开发集成使用 (转)
  2. 易中天品汉代风云人物01: 冤死的晁错(上)
  3. SuperPCA:用于高光谱图像无监督特征提取的超像素PCA方法
  4. C语言---求符合给定条件的整数集
  5. 史上最完美Win7与XP双系统安装方法
  6. “毒舌”专家解析大数据应用案例Part2—三星盖乐世社区 DSP跨屏投放
  7. vue 中 Element-UI 表单验证的几种方法
  8. matlab表示函数波形,matlab如何画冲激函数波形 matlab画冲激函数波形的方法
  9. 【移动安全高级篇】————12、静态分析
  10. 求职的打工人何时是个头