第三章习题学习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章习题
1.从1到100个自然数中随机不放回低抽取5个数,并求它们的和。
答:sum(sample(1:100,5))
注意 sample()
Arguments: sets,size,replace,prob
注意到R自带的帮助文档格式:
DUADV RS E(Description, usage, arguments, details ,value,reference ,see also, examples)
真的非常有用
2.从一幅扑克牌52张种随机抽取5张,求下列概率
a.抽到的是 10, J,Q,K,A;
b.抽到的是同花顺
答:a 4*4*4*4*4*4/choose(52,5)
b 4*choose(13,5)/choose(52,5)
可以看见的是后者远远小于前面的.
如果应用样本点的观点,也可以得到同样的结果。
prod(1:5)*4^5/prod(52:48)
4*prod(13:9)/prod(52:48)
PS:排列应用的函数是 prod(),从n1:n2的个数是 n1-n2+1个
组合要用到得函数是 choose(total,size)
可以使用样本点样本空间的观点,也可以改变下样本点的概率,使其不考虑顺序,这样就可以使用组合。
本质上只是选择的样本点的不同而已。不考虑顺序的样本点考虑顺序的样本点
3.从正态分布N(100,100)中随机产生1000个随机数,
a.作出这1000个正态随机数的直方图
b.从这1000个随机数中随机有放回地抽取500个,作出其直方图
c.比较它们的样本均值和样本方差
答:rnorm(1000,mean=100,sd=100)->x
sample(x,500)
hist() mean() sd()
PS:注意下面四个函数就可以了
pnorm() qnorm() dnorm() rnorm() 应该传入什么参数,完成什么效果.
P代表累积概率,q代表分位数,d代表核(密度),r代表随机数.
以及如何利用相应的分布生成函数
-----一个插曲题目:实验的模拟
进行下面的抽样。
每一个物种的本底值为1。
病原菌效益:N(u1,sd) 抽样10次,N(u2,sd)…N(u3,sd)每个抽样一次,共进行10个抽样,表示不同病原菌的效益,都为负值。
土壤的效益:假设土壤理化性质的效益在每个物种间是随机分布的,都为正值。
最后得到的结果是这样的,土壤理化效益+病原菌效益以及土壤理化效益。
问该如何处理这样的数据。
4.模拟随机游动:从标准正态分布中产生1000个随机数,并用cumsum()作出累积和,
最后使用命令plot()作出随机游动的示意图。
答:如果设置了x,y两个方向,则为布朗运动。
随机游动则为在y轴上下的游动,围绕0左右游动。
Plot(x) 其中 x=cumsum(rnorm(500))
5.从标准正态分布中随机产生100个随机数,由此数据求总体均值的95%置信区间,并
与理论值进行比较.
答:
使用一般情况下:即方差未知时的检验和置信区间估计。使用函数t.test(x)可以直接求置信区间。求的的置信区间同理论值相比会窄一些,并且不怎么对称,左短右长。
> qnorm(.025)
[1] -1.959964
> qnorm(.975)
[1] 1.959964
> x=rnorm(1000)
> t.test(x)
6.用本章给出的函数limite.central(),从图形上验证当样本容量足够大时,从贝塔分布
beta(1/2,1/2)抽取的样本的样本均值近似服从正态分布。
答:
a=matrix(,nc=10,nr=1000)
for(i in 1:1000){
a[I,]=rbeta(10,1/2,1/2)
}
Apply(a,MARGIN=1,mean)->b
hist(b)
PS: beta分布一般都可以由下面这个过程推到而来:
A.X的均值固定
B. 1-x的均值固定
C.积分为1 D:符合最复杂原理
则该分布为 beta分布.
想问一下,最复杂原理是什么意思?
B.有一个问题就是本图相关的for(I in 1:xx)只有这种形式,并且矩阵的第一行索引为
1,而非0.
C.不同维数的数据声明。用到单行数据定义为numeric(),二维数据定义为matrix(),
多维数据为array().
7.除本章给出的标准发布外,非标准的随机变量X的抽样可以通过格式点离散化方法实
现,设p(x)为X的密度函数,其抽样步骤如下:
A.在X的取值范围内等间隔地选取N个点,x1,x2,…xN,例如N为1000
B.计算P(xi),i=1,2,…N
C.正则化p(xi),i=1,2,…N,使其成为离散的分布律
D.按离散分布的抽样方法使用命令sample()从{xi}中间有放回的抽取n个数,如n=1000
试以标准正态分布为例实现上述分布,并与R中的正态分布rnorm()进行比较,将作图区域分为左右两部分
●使用rnorm()抽取n=1000个标准正态分布随机数,并在左侧区域画出相应的直
方图和核密度估计曲线
●用格式化离散点抽样化方法完成抽样,并在右侧区域画出相应的直方图和核密度估
计曲线,离散化所有的N=1000,n=1000,取点范围为[-4,4].
答:N1000=seq(-4,4,length=1000)
f<-function(x) dnorm(x)/sum(dnorm(x))
n1000=f(N1000)
result=sample(n1000,replace=T,size=1000)
standdata=rnorm(1000)
op<-par(mfrow=c(1,2))
hist(result,probability=T)
lines(density(result),col=”red”,lwd=3)
hist(standdata,probabiliyt=T)
lines(density(standdata),col=”red”,lwd=3)
par(op)