概率统计实验.docx
- 文档编号:4453671
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:14
- 大小:54KB
概率统计实验.docx
《概率统计实验.docx》由会员分享,可在线阅读,更多相关《概率统计实验.docx(14页珍藏版)》请在冰豆网上搜索。
概率统计实验
§13.6概率统计实验
[学习目标]
1.会用Mathematica求概率、均值与方差;
2.能进行常用分布的计算;
3.会用Mathematica进行期望和方差的区间估计;
4.会用Mathematica进行回归分析。
概率统计是最需要使用计算机的领域,过去依靠计算器进行统计计算,由于计算机的普及得以升级换代。
本节介绍Mathematica自带的统计程序包,其中有实现常用统计计算的各种外部函数。
一、样本的数字特征
1.一元的情况
Mathematica的内部没有数理统计方面的功能,但是带有功能强大的数理统计外部程序,由多个程序文件组成。
它们在标准扩展程序包集的Statistic程序包子集中,位于目录
D:
\Mathematica\4.0\AddOns\StandardPackages\Statistics
下。
通过查看Help,可以找到包含所需外部函数的程序文件名。
在程序文件DescriptiveStatistics.m中,含有实现一元数理统计基本计算的函数,常用的有:
SampleRange[data]求表data中数据的极差(最大数减最小数)。
Median[data]求中值。
Mean[data]求平均值
。
Variance[data]求方差(无偏估计)
。
StandardDeviation[data]求标准差(无偏估计)
。
VarianceMLE[data]求方差
。
StandardDeviationMLE[data]求标准差
。
实际上程序文件中的函数很多,这里只列出了最常用的函数,其它计算函数可以通过Help浏览。
例1给出一组样本值:
6.5,3.8,6.6,5.7,6.0,6.4,5.3,计算样本个数、最大值、最小值、均值、方差、标准差等。
解:
In[1]:
=< In[2]: =data={6.5,3.8,6.6,5.7,6.0,6.4,5.3}; In[3]: =Length[data] Out[3]=7 In[4]: =Min[data] Out[4]=3.8 In[5]: =Max[data] Out[5]=6.6 In[6]: =SampleRange[data] Out[6]=2.8 In[7]: =Median[data] Out[7]=6. In[8]: =Mean[data] Out[8]=5.75714 In[9]: =Variance[data] Out[9]=0.962857 In[10]: =StandardDeviation[data] Out[10]=0.981253 In[11]: =VarianceMLE[data] Out[11]=0.825306 In[12]: =StandardDeviationMLE[data] Out[12]=0.908464 说明: 在上例中,In[1]首先调入程序文件,求数据个数、最大值和最小值使用内部函数。 2.多元的情况 在程序文件MultiDescriptiveStatistics.m中,含有实现多元数理统计基本计算的函数,常用的有: SampleRange[data]求表data中数据的极差。 Median[data]求中值。 Mean[data]求平均值。 Variance[data]求方差(无偏估计)。 StandardDeviation[data]求标准差(无偏估计)。 VarianceMLE[data]求方差。 StandardDeviationMLE[data]求标准差。 Covariance[xlist,ylist]求x,y的协方差(无偏估计) 。 CovarianceMLE[xlist,ylist]求x,y的协方差 。 Correlation[xlist,ylist]求x,y的相关系数 。 实际上程序文件中的函数很多,这里只列出了最常用的函数,其它计算函数可以通过Help浏览。 例2给出4个样本值: {1.1,2.0,3.2},{1.3,2.2,3.1},{1.15,2.05,3.35},{1.22,2.31,3.33},计算样本个数、均值、方差、标准差等。 解: In[1]: =< In[2]: =data={{1.1,2.0,3.2},{1.3,2.2,3.1}, {1.15,2.05,3.35},{1.22,2.31,3.33}}; Length[data] Out[3]=4 In[4]: =SampleRange[data] Out[4]={0.2,0.31,0.25} In[5]: =Median[data] Out[5]={1.185,2.125,3.265} In[6]: =Mean[data] Out[6]={1.1925,2.14,3.245} In[7]: =Variance[data] Out[7]={0.00755833,0.0200667,0.0137667} In[8]: =VarianceMLE[data] Out[8]={0.00566875,0.01505,0.010325} In[9]: =CentralMoment[data,2] Out[9]={0.00566875,0.01505,0.010325} In[10]: =x=data[[All,1]];y=data[[All,2]]; z=data[[All,3]]; In[11]: =Covariance[x,y] Out[11]=0.0093 In[12]: =Covariance[z,z] Out[12]=0.0137667 In[13]: =CovarianceMLE[y,y] Out[13]=0.01505 In[14]: =Correlation[y,z] Out[14]=0.0521435 In[15]: =Correlation[x,x] Out[15]=1. 二、常用分布的计算 在计算机出现以前,统计计算总是依赖一堆函数表。 使用本节介绍的函数可以取代查表,为实现各种统计计算的自动化做好了底层准备工作。 1.离散分布 程序文件DiscreteDistributions.m中,含有用于离散分布计算的函数。 其中常用的离散分布有: BernoulliDistribution[p]贝努利分布。 BinomialDistribution[n,p]二项分布。 GeometricDistribution[p]几何分布。 HypergeometricDistribution[n,M,N]超几何分布。 PoissonDistribution[λ]泊松分布。 DiscreteUniformDistribution[n]离散的均匀分布。 NegativeBinomialDistribution[n,p]负二项分布。 以上函数中的参数,既可以是数值的,也可以是符号的。 使用这些函数只能按用户给出的参数建立一个表达式,并不能返回任何其它结果。 真正进行计算的是下面的求值函数,它们使用以上的分布表达式作为一个参数。 常用的求值函数有: Domain[dist]求dist的定义域。 PDF[dist,x]求点x处的分布dist的密度值。 CDF[dist,x]求点x处的分布函数值。 Quantile[dist,q]求x,使CDF[dist,x]达到q。 Mean[dist]求分布dist的期望。 Variance[dist]求方差。 StandardDeviation[dist]求标准差。 ExpectedValue[f,dist,x]求Ef(x)。 CharacteristicFunction[dist,t]求特征函数φ(t)。 Random[dist]求具有分布dist的伪随机数。 RandomArray[dist,dims]求维数为dims的伪随机数的数组。 例3观察下面二项分布的各种基本计算。 In[1]: =< In[2]: =b=BinomialDistribution[n,p] Out[2]=BinomialDistribution[n,p] In[3]: =Mean[b] Out[3]=np In[4]: =Variance[b] Out[4]=n(1-p)p In[5]: =CharacteristicFunction[b,t] Out[5]=(1-p+eitp)n In[6]: =b=BinomialDistribution[10,0.3] Out[6]=BinomialDistribution[10,0.3] In[7]: =Domain[b] Out[7]={0,1,2,3,4,5,6,7,8,9,10} In[8]: =PDF[b,4] Out[8]=0.200121 In[9]: =CDF[b,3.9] Out[9]=0.649611 In[10]: =CDF[b,4] Out[10]=0.849732 In[11]: =Variance[b] Out[11]=2.1 说明: 在上例中,首先调入程序文件。 In[2]用b表示具有符号参数的二项分布,这一步只是为了后面输入时方便,并非必需的,也可以使用嵌套省略这一步。 In[3]~In[5]进行的是符号运算,可以得到期望、方差等的一般公式。 这是本程序与一般统计软件的不同之处,充分体现了Mathematica的特色。 接下来给出具体的参数值,进行数值计算,这些计算取代了查表。 以下是一些更广泛、深入的例子。 例4观察下面离散分布的各种计算。 In[1]: =< In[2]: =h=HypergeometricDistribution[n,M,N]; Mean[h] Out[3]= In[4]: =Variance[h] Out[4]= In[5]: =p=PoissonDistribution[5]; PDF[p,2] Out[6]= In[7]: =N[%] Out[7]=0.0842243 In[8]: =PDF[p,20]//N Out[8]=2.64121×10-7 In[9]: =N[CDF[p,20],20] Out[9]=0.99999991890749540112 In[10]: =ExpectedValue[x^2,p,x] Out[10]=30 In[11]: =RandomArray[p,{2,10}] Out[11]={{3,4,6,10,2,5,7,2,5,5}, {4,3,2,11,5,4,2,2,4,6}} 说明: 在上例中表明,超几何分布的参数按我国教科书的习惯来表示,这里求出的期望和方差公式就与教科书上的相同了。 In[5]中给出的参数是准确数5,Mathematica在下面进行的仍是符号计算,得到准确结果。 如果参数改为5.0,则计算结果就都是近似值了。 In[10]是求Eξ2,ExpectedValue是一个很有用的函数,务必注意。 除了以上介绍的内容外,还有些不常用的函数本书没有列出,有兴趣的读者可以浏览Help。 2.连续分布 程序文件ContinuousDistributions.m中,含有用于连续分布计算的函数。 其中常见的连续分布有: NormalDistribution[μ,σ]正态分布。 UniformDistribution[min,max]均匀分布。 ExponentialDistribution[λ]指数分布。 StudentTDistribution[n]t分布。 ChiSquareDistribution[n]χ2分布。 常用的求值函数与离散分布相同,这里不再列出。 例5计算: (1)ξ~N(0,1),求: P(ξ≤1.96),P(ξ≤-1.96),P(-1<ξ≤2)。 (2)ξ~N(8,0.5),求: P(ξ≤10),P(7<ξ≤9)。 解: In[1]: =< In[2]: =n=NormalDistribution[0,1]; In[3]: =CDF[n,1.96] Out[3]=0.975002 In[4]: =CDF[n,-1.96] Out[4]=0.0249979 In[5]: =CDF[n,2.]-CDF[n,-1.] Out[5]=0.818595 In[6]: =n=NormalDistribution[8,0.5]; In[7]: =CDF[n,10] Out[7]=0.999968 In[8]: =CDF[n,9]-CDF[n,7] Out[8]=0.9545 说明: 在上例中,由于In[2]没有使用小数点,这时在In[5]中需要使用小数点才能得到近似值,否则得到符号解。 反之,由于In[6]使用了小数点,后面的计算则不必再使用小数点了。 如果使用人工查表的方法求In[7],还需要首先转换成标准正态分布,这里就显得方便了。 例6绘制χ2分布在n分别为1,5,15时的分布密度函数图。 解: In[1]: =< In[2]: =Plot[{PDF[ChiSquareDistribution[1],x], PDF[ChiSquareDistribution[5],x], PDF[ChiSquareDistribution[15],x]},{x,0,30}, PlotRange→{0,0.2}] 得到如图13-46所示的函数图形。 图13-46χ2分布的分布密度图 说明: 上例中的绘图语句使用了函数嵌套,其中的函数名较长,最好自制统计函数模板。 因为这些统计计算都可以是符号的,所以能用于查询各种公式。 以下是一个实例: In[1]: =< In[2]: =PDF[NormalDistribution[0,1],x] Out[2]= In[3]: =n=NormalDistribution[μ,σ]; Mean[n] Out[4]=μ In[5]: =Variance[n] Out[5]=σ2 In[6]: =e=ExponentialDistribution[λ]; Mean[e] Out[7]= In[8]: =Variance[e] Out[8]= In[9]: =ExpectedValue[x^2,e,x] Out[9]= 三、区间估计 1.总体数学期望的区间估计 程序文件ConfidenceIntervals.m中,含有用于总体参数区间估计的函数。 其中用于总体数学期望的区间估计的函数是: MeanCI[data,KnownVariance→var]已知方差var,由数据表data求总体数学期望的置信区间(基于正态分布)。 MeanCI[data]由数据表data求总体数学期望的置信区间(方差未知、基于t分布)。 其中参数KnownVariance也可以改为KnownStandardDeviation,即已知标准差。 以上两个函数由样本数据表data直接求置信区间。 但有时已知的是样本平均值 ,这时改用以下函数: NormalCI[mean,sd]标准差σ已知,且sd= ,由样本平均值mean求总体数学期望的置信区间(基于正态分布)。 StudentTCI[mean,se,dof]用于方差未知,由样本平均值mean求总体数学期望的置信区间(基于t分布),其中,se= ,而dof是自由度(等于n-1)。 以上函数都有可选参数: ConfidenceLevel置信度,默认值为0.95。 例7已知某炼铁厂的铁水含碳量(%)服从正态分布,现测得5炉铁水的含碳量分别是: 4.28,4.4,4.42,4.35,4.37。 如果已知标准差为σ=0.108,求铁水平均含碳量的置信区间(置信度为0.95)。 解: In[1]: =< In[2]: =data={4.28,4.4,4.42,4.35,4.37}; MeanCI[data,KnownVariance→0.108^2] Out[3]={4.26934,4.45866} 例8假定新生男婴的体重服从正态分布,随机抽取12名男婴,测得体重分别是(单位: g): 3100,2520,3000,3000,3600,3160,3560,3320,2880,2600,3400,2540。 试求新生男婴平均体重的置信区间(置信度为0.95)。 解: In[4]: =data={3100,2520,3000,3000,3600,3160,3560,3320, 2880,2600,3400,2540}; MeanCI[data] Out[5]={2818.2,3295.13} 例9在例7中如果改为已知测得9炉铁水的含碳量的平均值是4.484,其余条件不变,再求铁水平均含碳量的置信区间(置信度为0.95)。 解: In[6]: =NormalCI[4.484,0.108/ ] Out[6]={4.41344,4.55456} 例10铅的比重测量值服从正态分布,测量16次算出 =2.705,S=0.029。 试求铅的比重的置信区间(置信度为0.95)。 解: In[7]: =StudentTCI[2.705,0.029/Sqrt[16],15] Out[7]={2.68955,2.72045} 当调入程序文件ConfidenceIntervals.m时,为了计算各种统计量,这个程序会自动调入程序文件DescriptiveStatistics.m。 因此,也可以首先由数据计算函数StudentTCI的各个参数,如下所示: In[1]: =< In[2]: =data={2.1,1.2,0.7,1.0,1.1,3.2,3.2,3.3,2.1,0.3}; m=Mean[data] Out[3]=1.82 In[4]: =se=StandardErrorOfSampleMean[data] Out[4]=0.354275 In[5]: =StudentTCI[m,se,Length[data]-1,ConfidenceLevel→0.9] Out[5]={1.17057,2.46943} 说明: 上例中,In[4]利用数据直接求出se,而不是像教科书上先求S,In[5]示范了设置置信度为0.9的方法。 2.总体方差的区间估计 对总体的方差进行区间估计的函数是: VarianceCI[data]由数据表data求总体方差的置信区间(基于χ2分布)。 ChiSquareCI[variance,dof]由无偏估计样本方差variance,求总体方差的置信区间,其中dof是自由度(等于n-1)。 例11试求例8的新生男婴体重方差的置信区间(置信度为0.95)。 解: In[1]: =< In[2]: =VarianceCI[{3100,2520,3000,3000,3600,3160,3560, 3320,2880,2600,3400,2540}] Out[2]={70687.2,406072.} 例12设炮弹速度服从正态分布,取9发炮弹测得无偏估计样本方差S2=11(m/s)2,求炮弹速度方差的置信区间(置信度为0.9)。 解: In[3]: =ChiSquareCI[11,8,ConfidenceLevel→0.9] Out[3]={5.67474,32.2033} 四、回归分析 对于线性回归,如果只想得到回归方程,只要使用函数Fit就行了。 例13已知某种商品的价格与日销售量的数据: 价格(元)1.02.02.02.32.52.62.83.03.33.5 销量(斤)5.03.53.02.72.42.52.01.51.21.2 试求线性回归方程,再求价格为4时的日销售量。 解: In[1]: =data{{1.0,5.0},{2.0,3.5},{2.0,3.0},{2.3,2.7}, {2.5,2.4},{2.6,2.5},{2.8,2.0},{3.0,1.5}, {3.3,1.2},{3.5,1.2}}; Fit[data,{1,x},x] Out[2]=6.43828-1.57531x In[3]: =%2/.x→4 Out[3]=0.137029 以上函数虽然能用最小二乘法求出回归方程,但是没有相关性检验。 程序文件LinearRegression.m中,含有实现多元线性回归的专用函数,具体调用格式如下: Regress[data,funs,vars]由表data的数据,求由基函数表funs中函数的线性组合构成的回归方程,其中funs中函数的自变量由表vars给出。 其中表data的一般形式为{{x11,x21,…,y1},{x12,x22,…,y2},…},表funs的一般形式为{f1,f2,…},而表vars的一般形式为{x1,x2,…},其实这里的表示法与函数Fit相同,具体表示式的例子可以参看前面的例子,这里不再重复。 例14使用Regress重解例13。 解: 数据已经在解例13时输入,这里使用Regress继续求解。 In[4]: =< In[5]: =Regress[data,{1,x},x] Out[5]={ParameterTable→ EstimateSETStatPValue 16.438280.23649427.22393.57135×10-9 x-1.575310.0911754-17.27781.28217×10-7 RSquared→0.973901,AdjustedRSquared→0.970639 EstimatedVariance→0.0397359,ANOVATable→ DFSumOfSqMeanSqFRatioPValue Model111.862111.8621298.5241.28217×10-7 Error80.3178870.0397359 Total912.18
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 概率 统计 实验