Моя цель - построить контурный график для квадратичного приближения логарифмического правдоподобия на основе ряда Тейлора для распределения Вейбулла.
Но, как новичок в R (и в статистике), я не могу двигаться вперед, чтобы написать функцию для оценки логарифмической вероятности получения тета и данных.
Может ли кто-нибудь указать мне правильное направление? Вот подсказка Гессена, которую я имею в качестве подсказки.
#observed information matrix
jhat<-matrix(NA,nrow=2,ncol=2)
jhat[1,1]<-n/gammahat^2+sum((y/betahat)^gammahat*
(log(y/betahat))^2)
jhat[1,2]<-jhat[2,1]<- n/betahat-sum(y^gammahat/betahat^(gammahat+1)*
(gammahat*log(y/betahat)+1))
jhat[2,2]<- -n*gammahat/betahat^2+gammahat*(gammahat+1)/
betahat^(gammahat+2)*sum(y^gammahat)
solve(jhat)
Дополнительно, у меня есть эти оценки для гамма-шляпы и бета-шляпы, и это та часть, которую я думаю Я должен изменить:
gammahat<-uniroot(function(x) n/x+sum(log(y))-n*
sum(y^x*log(y))/sum(y^x),
c(1e-5,15))$root
betahat<- mean(y^gammahat)^(1/gammahat)
weib.y.mle<-c(gammahat,betahat)
У меня есть эта функция, но я думаю, что она не использует расширение Тейлора:
log_lik_weibull <- function( data, param){
-sum(dweibull(data, shape = param[1], scale = param[2], log = TRUE)) }