看书标记【统计学习理论与方法】2

第二章 统计推断

2.1参数估计

点估计是用样本统计量 θ ^ \hat{\theta} θ^的某个取值直接作为总体参数的估计值,因为统计量包含了数据信息,具有数据特征,比如样本均值或者样本比例,也称为矩估计。但是在用矩估计法时,具体样本还需要围绕矩估计构建区间估计,用于概率度量真实值与估计值之间的接近程度。

2.1.2 单总体参数区间估计

##3σ
pnorm(1)-pnorm(-1)
pnorm(2)-pnorm(-2)
pnorm(3)-pnorm(-3)

两种说法:大约有95%的样本均值会落在μ的两个标准差以内,或说,约有95%的样本所构造的两个标准差区间会包括μ。(90%临界值1.645;95%临界值1.96;99%置信水平的临界值2.58)

#总体比例的区间估计
##基于索尔克的试验
n<-200745
(p.hat<-57/n)
p.hat+c(-1.96,1.96)*sqrt(p.hat*(1-p.hat)/n)
##Wald方法是利用正态分布来对二项分布近似,Clopper-Person是完全基于二项分布,是更确切的区间估计方法
binom.test(57,200745)

总体均值的区间估计

##方差已知
#写一个函数用于,方差已知时置信区间的计算函数
conf.inf<-function(x,n,sigma,alpha){
		options(digits=5)
		mean<-mean(x)
		c(mean-sigma*qnorm(1-alpha/2,mean=0,sd=1,
		lower.tail=TRUE)/sqrt(n),
		mean+sigma*qnorm(1-alpha/2,mean=0,sd=1,
		lower.tail=TRUE)/sqrt(n))
		}
x<-c(112.5,101.0,...,93.3)#数据集读入
n=25;alpha=0.05;sigma=10;
result<-conf.int(x,n,sigma,alpha)
result

##方差未知时,需要用到t检验统计量
##画一个正态分布和t分布的比较图
curve(dnorm(x),from=-5,to=5,ylim=c(0,0.45),ylab="",col="blue")
par(new=TRUE)
curve(dt(x,1),from=-5,to=5,ylim=c(0,0.45),ylab="",lty=2,col="red")
par(new=TRUE)
curve(dt(x,3),from=-5,to=5,ylim=c(0,0.45),ylab="",lty=3)
text.legend=c("dnorm","dt(1)","dt(3)")
legend("topright",legend=text.legend,lty=c(1,2,3),col=c("blue","red","black"))
##t检验
t.test(x,mu=7)

总体方差的区间估计

##编写方差区间估计的函数
chisq.var.test<-function(x,alpha){
		options(digits=4)
		result<-list()
		n<-length(x)
		v<-var(x)
		result$conf.int.var<-c(
			(n-1)*v/qchisq(alpha/2,df=n-1,lower.tail=F),
			(n-1)*v/qchisq(alpha/2,df=n-1,lower.tail=T))
		result$conf.int.se<-sqrt(result$conf.int.var)
		result
		}
chisq.var.test(x,0.05) ##开方后才是置信区间

2.1.3 双总体均值差的估计

根据正态分布的可加性得知,如果有 X 1 ∼ N ( μ 1 , σ 1 2 ) X_1\sim N(\mu_1,\sigma_1^2) X1N(μ1,σ12) X 2 ∼ σ 2 2 X_2\sim \sigma_2^2 X2σ22,则有:
a X 1 + b X 2 ∼ N ( a μ 1 + b μ 2 , a 2 σ 1 2 + b 2 σ 2 2 ) aX_1+bX_2\sim N(a\mu_1+b\mu_2,a^2\sigma_1^2+b^2\sigma_2^2) aX1+bX2N(aμ1+bμ2,a2σ12+b2σ22)
当a=1,b=-1时,有:
X 1 − X 2 ∼ N ( μ 1 − μ 2 , σ 1 2 + σ 2 2 ) X_1-X_2\sim N(\mu_1-\mu_2,\sigma_1^2+\sigma_2^2) X1X2N(μ1μ2,σ12+σ22)
x ˉ 1 − x ˉ 2 ∼ N ( μ 1 − μ 2 , σ 1 2 / n 1 + σ 2 2 / n 2 ) \bar{x}_1-\bar{x}_2\sim N(\mu_1-\mu_2,{\sigma_1^2}/n_1+{\sigma_2^2}/n_2) xˉ1xˉ2N(μ1μ2,σ12/n1+σ22/n2).
(这里和原文有出入,原文给的是开方后的标准差)。
-当方差已知时-
( x ˉ 1 − x ˉ 2 − z n / 2 σ 1 2 n 1 + σ 2 2 n 2 , x ˉ 1 − x ˉ 2 + z n / 2 σ 1 2 n 1 + σ 2 2 n 2 ) (\bar{x}_1-\bar{x}_2-z_{n/2}\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}},\bar{x}_1-\bar{x}_2+z_{n/2}\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}) (xˉ1xˉ2zn/2n1σ12+n2σ22 ,xˉ1xˉ2+zn/2n1σ12+n2σ22 )
-方差未知时-
( x ˉ 1 − x ˉ 2 − z n / 2 s 1 2 n 1 + s 2 2 n 2 , x ˉ 1 − x ˉ 2 + z n / 2 s 1 2 n 1 + s 2 2 n 2 ) (\bar{x}_1-\bar{x}_2-z_{n/2}\sqrt{\frac{s_1^2}{n_1}+\frac{s_2^2}{n_2}},\bar{x}_1-\bar{x}_2+z_{n/2}\sqrt{\frac{s_1^2}{n_1}+\frac{s_2^2}{n_2}}) (xˉ1xˉ2zn/2n1s12+n2s22 ,xˉ1xˉ2+zn/2n1s12+n2s22 )

chicks<-data.frame(feed=rep(c(1,2),times=c(3,6)),weight_gain=c(42,68,85,42,97,81,95,61,103))
tapply(chicks$weight_gain,chicks$feed,mean)
tapply(chicks$weight_gain,chicks$feed,sd)
##t-test
t.test(weight_gain~feed,data=chicks,var.equal=TRUE)
##t.test有参数选择paired,默认FALSE为独立样本,TRUE为配对样本;参数conf.level默认为0.95的置信水平,var.equal默认为FALSE,TRUE表示两个总体具有相同方差。

##配对样本
Feed.1<-c(44,55,68,85,90,97)
Feed.2<-c(42,61,81,95,97,103)
t.test(Feed.2,Feed.1,paired=T)
##等价于
diff=Feed.2-Feed.1
t.test(diff)

2.1.4 双总体比例差估计

p ^ 1 − p ^ 2 ∼ N ( p 1 − p 2 , p 1 ( 1 − p 1 ) n 1 + p 2 ( 1 − p 2 ) n 2 ) \hat{p}_1-\hat{p}_2\sim N(p_1-p_2,\frac{p_1(1-p_1)}{n_1}+\frac{p_2(1-p_2)}{n_2}) p^1p^2N(p1p2,n1p1(1p1)+n2p2(1p2))
-比例未知时-
p ^ 1 − p ^ 2 ± z α / 2 p ^ 1 ( 1 − p ^ 1 ) n 1 + p ^ 2 ( 1 − p ^ 2 ) n 2 ) \hat{p}_1-\hat{p}_2 \pm z_{\alpha /2}\sqrt{\frac{\hat{p}_1(1-\hat{p}_1)}{n_1}+\frac{\hat{p}_2(1-\hat{p}_2)}{n_2})} p^1p^2±zα/2n1p^1(1p^1)+n2p^2(1p^2))

prop.test(x=c(225,128),n=c(500,400),correct=F)##corrrect表示是否需要连性续修正

2.2.3 均值检验

计算p值

##双尾检验
2*pt(-2.93,16,lower.tail=T)
##单位检验
pt(-2.93,16)
##等价于
t.test(pH,mu=7,alternative="less")
##双尾的临界值
qt(0.025,16);qt(0.975,16)

2.3 极大似然估计

极大似然估计的基本思想:设总体含有待估参数θ,θ可以取很多值,,所以要在很多可能取值中选择一个使样本观测值出现的概率最大的θ值,记为 θ ^ \hat{\theta} θ^,并称其为θ的极大似然估计。

2.3.2 求极大似然估计的方法

当函数关于参数可导时,可求导获得极大值对应的参数值,也为了求导方便,常会取对数后根据“费马定理”求偏导取零得到似然方程,求解。参数的极大似然估计并不能保证无偏性,极大似然估计还有一个“不变原则”,即参数的函数,参数的似然估计对应的函数也是对应函数的极大似然估计。

2.3.3 极大似然估计应用举例

先确定似然函数的表达式,然后用R中的极值求解函数。在单参数情况下,例如:

f<-function(lambda){
logL = n*log(lambda)-lambda*sum(x)
return(logL)
}  ##这是一个指数分布的似然函数表达式

x = c(518,612,713,388,434)
n = length(x)
duration<-optimize(f,c(0,1),maximum=TRUE)
## interval指定区间内搜索函数f的极值,也可用lower和upper来控制,参数maximum=FALSE表示求极小值,TRUE表示极大值
duration ##得到参数值lambda的MLE

1/duration$maximum  ## 由指数函数的期望为1/lambda 得到

###另一种方法和案例
Library(MASS)
Attach(geyser) ##需要的数据集
Hist(waiting,freq=FALSE,col=”wheat”)
Lines(density(waiting),col=’red’,lwd=2)
##因为绘制的直方图表示图形有两个峰,像两个分布叠在一起的,所以推断分布是两个正态分布的混合,此时需要估计的参数有5个

LL<-function(params,data){
	T1<- suppressWarnings(dnorm(data,params[2],params[3]))
	T2<- suppressWarnings(dnorm(data,params[4],params[5]))
	ll<- sum(log(params[1]*t1+(1-params[1])*t2))
	Return(ll)
}
##suppressWarnings()函数用于处理在迭代过程中可能遇到的无效值信息
##R中的maxLik程序包用于进行极大似然估计,其中的method参数可以选择不同的数值求解方法。
Library(“maxLik”)
Mle<- maxLik(logLik = LL,start = c(0.5,50,10,80,10),data=waiting)
Mle
##用图形看一下拟合效果
 A<-mle$estimate[1]
Mu1<- mle$estimate[2];s1<- mle$estimate[3]
Mu2<- mle$estimate[4];s2<- mle$estimate[5]
X<-seq(40,120,length=100)
F<-a*dnorm(X,mu1,s1)+(1-a)*dnorm(X,mu2,s2)

Hist(waiting,freq = FALSE,col = “wheat”)
Lines(density(waiting),col=’red’,lty=2)
Lines(X,f,col = “blue”)

Text.legend=c(“Density Line”,”Max Likelihood”)
Legend(“topright”,legend = text.legend,lty= c(2,1),col = c(“red”,”blue”))
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值