x为具有特征样本数,n为样本总数,p为检验的比率;
例子:
有一批蔬菜种子的平均发芽率p0=0.85,现随即抽取500粒,用种衣剂进行浸种处理,结果有445粒发芽。试检验种衣剂对种子发芽率有无效果。
解:根据题意,所检验的问题为
H0:p=p0=0.85, H1:p≠p0
可以用R语言的binom.test
代码:binom.test(445,500,p=0.85)
Q1不知道你想求什么,是想求最后还能用灯泡的个数么。那直接一句话就可以了。用二项分布随机数,你整个function就是在做二项分布随机数。
>rbinom(10,500,0.99) #做10次试验,500个灯泡,每个灯泡的故障率是0.01
[1] 495 495 495 494 492 494 499 493 495 491
Q2 quantile()是求一组数据的分为点,默认最大最小值,上下四分位数和中位数,当然你可以指定
quantile(vector,c(0.1,0.3,0.6))就是输出vector这组数的10% 30% 和60%的分位数
qbinom()是生成二项分布的分位数 qbinom(p, size, prob) p是对应的百分比
quantile() 会找出满足 F(x) ≥ p 最小的x 有点像pbinom的反函数,但由于是离散的,会有小小差别。
Q3 看Q1
#为什么是 0: (size-1)? 不是应该n吗? n是试验次数,size是你的500
#这个function有什么用? 日后调用
#随机一个号码? 是随机一个0,1均匀分布的随机数
#这N有什么用, pbinom是生成了500个0到1之间的点,你如果plot一下就是二项分布的分布函数,注意不是分布律P(X=k),是P(X<=k) k是0: (size -1) 为什么没有size?因为P(X<=size)=1 没啥用。 N之前不是 x<- runif (1) 生成了一个0,1均匀分布的随机数,看看一共有多少个大于它。所以用了sum
#这个又有什么用。就是最后输出N,如果你觉得不明显的话,可以用return(N)代替
#这个也不明白 replicate (n , singlenumber()) 重复n次,就是试验n次
补充:你可以这么写
ranbin<-function(size,prob){
cumpois<-pbinom(0:(size-1),size,prob)
x<-runif(1)
N<-sum(x>cumpois)
N
}
这样就相当于n=1了
两种可能结果的离散随机变量概率分布 ,失败是0,成功是1,p是成功的概率。
dbinorm() :提供任何有效x的概率质量函数
pbinom() :提供累积概率分布,求结果成功q次及q次以下的累积概率,给定分位数值q,输出累积概率p
qbinom() :累积概率分布的逆( pbinom() 的逆),给定累积概率p,输出分位数值q
rbinom() :产生n个服从二项分布的随机数
3. dpois() , ppois() , qpois() , rpois()
dt() , pt() , qt() , rt()