Number 10 p24 ------------- mle=2.55 > theta<-seq(1,4,.05) > plot(theta,exp(20*(2.55-theta))*theta^(51),type='l') > abline(h=.5) > abline(h=.1) > abline(h=.01) Number 1 page 16 ---------------- like16<-function(theta,M=200,m=20,F=200,f=5){ # Give log likelihood for problem 1 page 16 l16<-(m+2*f)*log(theta)+(M-m)*log(1-theta)+(F-f)*log(1-theta^2) l16} > like16(.3) [1] -99.84912 > like16(.1) [1] -87.99219 > theta1_seq(.01,.3,.01) > plot(theta1,like16(theta1),type='l') max16<-function(theta.int,M=200,m=20,F=200,f=5){ qq<-nlminb(theta.int,neglike16,lower=0.01,upper=.99,M=M,m=m,F=F,f=f) print(qq$messsage) print(qq$grad.norm) qq$parameter} neglike16<-function(theta,M=200,m=20,F=200,f=5){ # Give log likelihood for problem 1 page 16 l16n<--((m+2*f)*log(theta)+(M-m)*log(1-theta)+(F-f)*log(1-theta^2)) l16n} #-------------------------------------------------------------------------- # 2-d likelihood extreme <- function(x){exp(x-exp(x))} negextreme <- function(theta,data=x){ # negative log likelihood for extreme value location/scale n <- length(data) mu <- theta[1] sig <- theta[2] nl <- n*log(sig)-sum((data-mu)/sig)+sum(exp((data-mu)/sig)) nl} maxextreme <- function(theta.int,data=x){ # finds ml estimates of location/scale for extreme value data qq <- nlminb(theta.int,negextreme,lower=c(-Inf,0),data=data) qq$parameters} plotextreme <- function(mu=seq(-.4,0,.01),sig=seq(.3,.8,.01),data=x){ #does perspective plot of extreme likelihood surface n1 <- length(mu) n2 <- length(sig) parest <- maxextreme(c(mean(data),sd(data))) zmax <- -negextreme(parest,data=data) z <- matrix(0,n1,n2) for(i in 1:n1){for(j in 1:n2){ z[i,j] <- -negextreme(c(mu[i],sig[j]),data=data)-zmax}} persp(mu,sig,z,xlab="mu",ylab="sigma",zlab="Rel.Like.") list(mu=mu,sig=sig,z=z)}