list () не обновляется в цикле for в R - PullRequest
0 голосов
/ 19 ноября 2018

Я хочу оценить параметры нормального распределения с использованием функции mle2 в r.Я скопировал свою r функцию ниже.

library(bbmle)
library(sn)
y = c(rsn(n=50, xi=0, omega=1, alpha=1, tau=0, dp=NULL), rsn(n=50, xi=0, omega=1, alpha=6, tau=0, dp=NULL))
n= length(y)

sn.fit = function(xi, omega, alpha){
  -sum(dsn(y, xi=0, omega=1, alpha, log = TRUE))
}

parl = list()
for(i in 1:(n-1)){
  dat = list(y[1:i])
parl[[i]]= mle2(sn.fit, start = list(xi = 0, omega = 1, alpha = 1), data = dat)@coef

}
parll = do.call("rbind", parl)
parll

Вывод приведен ниже.

> parll
       xi omega    alpha
  [1,]  0     1 1.408533
  [2,]  0     1 1.408533
  [3,]  0     1 1.408533
  [4,]  0     1 1.408533
  [5,]  0     1 1.408533
  [6,]  0     1 1.408533
  [7,]  0     1 1.408533
  [8,]  0     1 1.408533
  [9,]  0     1 1.408533
 [10,]  0     1 1.408533
 [11,]  0     1 1.408533
 [12,]  0     1 1.408533

Поскольку я намереваюсь оценить alpha для y[1:i] для i=1,...,(n-1).Почему мой результат не обновляется в списке?

Заранее спасибо.

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