# [R] Plotting the Log-Likelihood

enrico.foscolo2 at libero.it enrico.foscolo2 at libero.it
Tue Aug 25 16:46:02 CEST 2009

```Dear Users,

I would like to plot the log-likelihood (depending on two
parameters).

I wrote the following code:

library(mvtnorm)

sigma<-
matrix(c(4,2,2,3),ncol=2)

x<-rmvnorm(n=500,mean=c(1,2),sigma=sigma)

likel<-
function(param,data){

pos1<-which(data[,1]<0)

pos2<-which(data[,1]>=0)

#density

dens<-rep(0,nrow(data))

dens[pos1]<-dmvnorm(data[pos1,])
*param[1]

dens[pos2]<-dmvnorm(data[pos2,])*param[2]

#return log-
likelihood

sum(log(dens))

}

#plotting the log-likelihood

param1<-
seq(from=0,to=1,length=200)

param2<-seq(from=0,to=1,length=200)

combin<-
as.matrix(expand.grid(param1,param2,KEEP.OUT.ATTRS=FALSE))

likel.values<-
apply(combin,1,likel,data=x)

matr.likel.values<-matrix(likel.values,200,200)

persp(param1,param2,matr.likel.values,

xlab="param1",ylab="param2",

zlab="Likelihood",

theta=5,phi=20,expand=0.5,

col="lightblue",

It is all ok, but I am searching
for a new "lighting" way in order to earn time.

I need an alternative function
for apply(), when I calculate the log-likelihood for every single couple of
values (param1,param2).

Do you have any ideas?

Enrico Foscolo

```