I wrote r code for my user-defined distribution. This is the r code.
x<-c(36.8, 47.2, 35.6, 36.7, 55.8, 58.7, 42.3, 37.8, 55.4, 45.2, 31.8, 48.3, 45.3, 48.5, 52.8, 45.4, 49.8, 48.2, 54.5, 50.1, 48.4, 44.2, 41.2, 47.2, 39.1, 40.7, 40.3, 41.2, 30.4, 42.8, 38.9, 34, 33.2, 56.8, 52.6, 40.5, 40.6, 45.8, 58.9, 28.7, 37.3, 36.8, 40.2, 58.2, 59.2, 42.8, 46.3, 61.2, 58.4, 38.5, 34.2, 41.3, 42.6, 43.1, 42.3, 54.2, 44.9, 42.8, 47.1, 38.9, 42.8, 29.4, 32.7, 40.1, 33.2, 31.6, 36.2, 33.6, 32.9, 34.5, 33.7, 39.9)
#### PrWG Distribution Log-likelihood ####
LL_PrWG<-function(theta,lambda,gamma,alpha){
PDF<-(1-alpha)*(theta^2*x^(theta-1)+lambda*gamma*x^(gamma-1)*(1+x^theta))*(1+x^theta)^(-theta-1)*exp(-lambda*x^gamma)/(1-(alpha*(1+x^theta)^(-theta)*exp(-lambda*x^gamma)))^2
LL<- -sum(log(PDF))
return(LL)
}
#### PrWG Distribution Optimization ####
library(bbmle) ## calling R package bbmle###
fit<-mle2(LL_PrWG, start=list(theta=0.05,lambda=0.00001,gamma=0.001,alpha=0.0001), data=list(x), method="BFGS")
I have used several initial values to make theta>0, lambda>0, gamma>0 and 0<alpha<1 but at least one of the parameter estimates is negative. I need help to achieve theta>0, lambda>0, gamma>0 and 0<alpha<1.
PrWG Distribution Optimization
fit<-mle2(LL_PrWG, start=list(theta=0.05,lambda=0.00001,gamma=0.001,alpha=0.0001), data=list(x), method="BFGS")```
I have used several initial values to make theta>0, lambda>0, gamma>0 and 0<alpha<1 but at least one of the parameter estimates is negative. I need help to achieve theta>0, lambda>0, gamma>0 and 0<alpha<1.