Profile likelihood is an interesting theory to visualize and compute confidence interval for estimators (see e.g. Venzon & Moolgavkar (1988)). As we will use is, we will plot
But more generally, it is possible to consider
where . Then (under standard suitable conditions)
which can be used to derive confidence intervals.
> base1=read.table( + "http://freakonometrics.free.fr/danish-univariate.txt", + header=TRUE) > library(evir) > X=base1$Loss.in.DKM > u=5
The function to draw the profile likelihood for the tail index parameter is then
> Y=X[X>u]-u > loglikelihood=function(xi,beta){ + sum(log(dgpd(Y,xi,mu=0,beta))) } > XIV=(1:300)/100;L=rep(NA,300) > for(i in 1:300){ + XI=XIV[i] + profilelikelihood=function(beta){ + -loglikelihood(XI,beta) } + L[i]=-optim(par=1,fn=profilelikelihood)$value } > plot(XIV,L,type="l")
It is possible to use it that profile likelihood function to derive a confidenceinterval,
> PL=function(XI){ + profilelikelihood=function(beta){ + -loglikelihood(XI,beta) } + return(optim(par=1,fn=profilelikelihood)$value)} > (OPT=optimize(f=PL,interval=c(0,3))) $minimum [1] 0.6315989 $objective [1] 754.1115 > up=OPT$objective > abline(h=-up) > abline(h=-up-qchisq(p=.95,df=1)/2,col="red") > I=which(L>=-up-qchisq(p=.95,df=1)/2) > lines(XIV[I],rep(-up-qchisq(p=.95,df=1)/2,length(I)), + lwd=5,col="red") > abline(v=range(XIV[I]),lty=2,col="red")
This is done with the following code
OpenEdition suggests that you cite this post as follows:
Arthur Charpentier (February 7, 2012). a short word on profile likelihood. Freakonometrics. Retrieved October 8, 2024 from https://doi.org/10.58079/ouk9