1.单正态总体的区间估计
方差已知,估计均值:Z检验:
z.test()
:BSDA包,调用格式:
z.test(x, y = NULL, alternative = "two.sided", mu = 0, sigma.x = NULL, sigma.y = NULL, conf.level = 0.95)
x,y
是数值向量,默认y=NULL
,即进行单样本的假设检验;alternative
用于指定估计的置信区间,默认为双尾区间,less
表示求置信上限,greate
表示求置信下限;mu
表示均值,默认为0,仅在假设检验中起作用;sigma.x
和sigma.y
分别指定两个样本总体的标准差;conf.level
指定区间估计的置信水平
simple.z.test():
UsingR
包,只能进行置信区间估计,不能实现Z检验。调用格式:
simple.z.test(x, sigma, conf.level=0.95)
x
是数据向量,sigma
是已知的总体标准差,conf.level
是置信度。
方差未知,估计均值:用t
检验代替Z
检验:
t.test():
调用格式:
t.test(x, y = NULL, alternative=c("two sided","less","greater"), mu = 0,paired = TRUE, var.equal = FALSE, conf.level = 0.95,...)
x,y
为样本数据;alternative
表示所求置信区间的类型,默认为双尾检验;mu
表示均值,均值未知时不需要赋值;paired
表示是否是成对检验;var.equal
表示双样本的方差是否相等
均值已知/未知,估计方差:
根据均值已知/未知情况,用卡方分布估计方差置信区间,实际情况中均值多为未知。自行编写函数,可用以下代码实现:
var.conf.int=function(x,mu=Inf,alpha){
n=length(x)
if(mu
2.双正态总体的区间估计
当两总体方差已知,估计均值差μ1-μ2:
z.test():BSDA
包,调用格式同上:
z.test(x, y = NULL, alternative = "two.sided", mu = 0, sigma.x = NULL, sigma.y = NULL, conf.level = 0.95)
当两总体方差未知但相等,估计均值差μ1-μ2:
t.test():
调用格式同上:
t.test(x, y = NULL, alternative=c("two sided","less","greater"), mu = 0,paired = TRUE, var.equal = FALSE, conf.level = 0.95,...)
当两总体方差未知且不等,估计均值差μ1-μ2:
可用t.test()
,设置方差不等,也可以自己编写函数,代码如下:
n1=length(x);n2=length(y)
xbar=mean(x)-mean(y)
S1=var(x);S2=var(y)
nu=(S1/n1+S2/n2)^2/(S1^2/n1^2/(n1-1)+S2^2/n2^2/(n2-1))
c(xbar-z,xbar+z)}
两总体方差比的估计:
var.test():
调用格式:
var.test(x, y, ratio = 1, alternative = c("two.sided","less","greater"), conf.level = 0.95,...)
x,y
为样本数据;ratio
为原假设的方差比值;alternative
设置检验类型为双尾或是单尾;conf.level
为置信水平
3.比率的区间估计
用于估计具有某个特征的个体在总体中的比例
prop.test():
调用格式:
prop.test(x, n, p = NULL, alternative = c("two.sided","less","greater"),conf.level = 0.95,correct = TRUE)
x
为具有特征的样本数;n
为样本总数;p
设置假设检验的原假设比率值;alternative
设置检验方式;conf.level
为置信水平;correct
设置是否使用Yates
连续修正,默认为TRUE
。
抽样比很小时,可以使用二项式检验:
binom.test():
调用格式为:
binom.test(x, n, p = 0.5, alternative = c("two.sided","less","greater"),conf.level= 0.95)
参数代表意义与prop.test()
一致。