Я проводил небольшое симуляционное исследование, чтобы асимптотически исследовать свойства метода моментов и оценок максимального правдоподобия.Оценка максимального правдоподобия, основанная на Ньютоне-Рафсоне и методе моментов
Метод оценки моментов легко получить (он задан второй строкой моего кода), но для mle мне пришлось написать алгоритм Newton-Raphson algoritmh (который отлично работает для одного образца). Mle должен использовать метод оценки моментов в качестве начальной точки (a0), поскольку таким образом он обладает некоторыми оптимальными статистическими свойствами. Здесь
x<-rbeta(500,0.5,3)
mom<-3*mean(x)/(1-mean(x))
mlea<-function(x,a0,numstp=100,eps=0.001){
n=length(x)
numfin=numstp
ic=0
istop=0
while(istop==0){
ic=ic+1
lprime=n/a0+n/(a0+1)+n/(a0+2)+sum(log(x))
ldprime=-n/a0^2-n/(a0+1)^2-n/(a0+2)^2
a1=a0-(lprime/ldprime)
check=abs((a1-a0)/a0)
if(check<eps){istop=1}
a0=a1
}
list(a1=a1,check=check,realnumstps=ic)
}
Это работает для одного образца, но могу ли я получить эти оценки для 1000 образцов? Как я мог легко обобщить этот процесс? Моя основная трудность связана с тем, что mle нуждается в маме в качестве отправной точки, и оба они должны быть вычислены из одного и того же образца.
Заранее спасибо.
Вы можете использовать 'реплицировать (п, {...})', где '...' представляет весь код, который вы хотите повторить 'n' раз , –
@ RomanLuštrik, который не возвращает вектор чисел, попробуйте, если хотите. – JohnK