# a short word on profile likelihood

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",
> 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

```> library(ismev)
> gpd.profxi(gpd.fit(X,5),xlow=0,xup=3)```

Cite this blog post
Arthur Charpentier (2012, February 7). a short word on profile likelihood. Freakonometrics. Retrieved June 14, 2024, from https://doi.org/10.58079/ouk9

This site uses Akismet to reduce spam. Learn how your comment data is processed.