нахождение MLE для эпсилонного косого экспоненциального распределения - PullRequest
0 голосов
/ 13 октября 2018

Я использую следующий код R, чтобы найти MLE экспоненциального распределения Epsilon Skew:

enter image description here

, но у меня есть следующие ошибки наряду смного предупреждений.Я провел тщательный поиск, но не нашел полезных ответов.

Ошибка в fn (par, ...): отсутствует аргумент "sig" без значения по умолчанию

Предупреждающие сообщения:

1: в nlminb (начало = c (1, 2, 0.5, 2), цель = fESEP1, ...: оценка функции NA / NaN

2: в nlminb (начало =c (1, 2, 0,5, 2), цель = fESEP1, ...:

Вот моя программа

x <- c(2,5,3,7,3,2,0,2)
fESEP<- function(theta){
   th<-theta[1]
   sig<-theta[2]
   eps<-theta[3]
   alp<-theta[4]

   a = log(gamma(1+1/alp))
   b = ((1+eps)*sig*sqrt(2))^alp
   c = ((1-eps)*sig*sqrt(2))^alp
   d = log (sig)
   y1= (x-th)^alp
   y2= (th-x)^alp
   ans <- a + d + sum(y1/b)*ifelse(y2 < 0 ,1,0) +
          a + d + sum(y2/c)*ifelse( y1>= 0 ,1,0)
return(ans)
} 

optim(c(3,2,0.5, 1), fESEP, hessian=TRUE)
nlminb(start=c(1,2,0.5, 2), objective = fESEP,
       control=list(abs.tol = 0.00001,iter.max=100,trace=TRUE))

1 Ответ

0 голосов
/ 14 октября 2018

Я собираюсь опубликовать это как ответ на данный момент, хотя это может быть лучше комментарий, так что я могу позволить себе роскошь форматирования.

Когда я запускаю optim(), я получаю

Ошибка в optim (c (3, 2, 0.5, 1), fESEP, hessian = TRUE): целевая функция в optim оценивает длину 8, а не 1

, чтоочевидный красный флаг, что что-то не так с вашей целевой функцией.Есть проблема с вашим последним утверждением:

ans <- a + d + sum(y1/b)*ifelse(y2 < 0 ,1,0) +
       a + d + sum(y2/c)*ifelse( y1>= 0 ,1,0)

Я догадываюсь , что это должно быть что-то вроде

ans <- a + d + sum(y1/b*as.numeric(y2<0)) +
       a + d + sum(y2/c*as.numeric(y1>=0))

т.е. sum() должно быть вокругвесь вектор.На самом деле, я думаю, что это, вероятно, все еще неправильно: что-то вроде

ans <- a + d + sum(abs(x-th)^alp)/((1+sign(x-th)*eps)*sig*sqrt(2))^alp)

кажется более правдоподобным.

Но мы действительно не можем ответить на этот вопрос очень хорошо без ссылки на информацию, которой вы являетесьиспользуется для определения экспоненциального распределения эпсилон-асимметрии ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...