私が持っているいくつかのデータ ポイントに対数ピアソン III フィットを実行したいと思います。ただし、それを試みるたびに、何をすべきか本当にわからないエラーメッセージが表示されます。数日前からRしか使っていないので、私はRの専門家ではありません。
重要なコード部分、インポートのない部分などは次のとおりです。
pIIIpars<-list(shape=1, location=1, scale=1)
dPIII<-function(x, shape, location, scale) PearsonDS::dpearsonIII(x, shape=1, location=1, scale=1, params=pIIIpars, log=FALSE)
pPIII<-function(q, shape, location, scale) PearsonDS::ppearsonIII(q, shape=1, location=1, scale=1, params=pIIIpars, lower.tail = TRUE, log.p = FALSE)
qPIII<-function(p, shape, location, scale) PearsonDS::qpearsonIII(p, shape=1, location=1, scale=1, params=pIIIpars, lower.tail = TRUE, log.p = FALSE)
fitPIII<-fitdistrplus::fitdist(flowdata3$OEP, distr="PIII", method="mle", start=list("shape"=5000, "location"=5000, "scale"=5000))
summary(fitPIII)
plot(fitPIII)
Log Pearson III 分布の定義には PearsonDS パッケージを使用し、当てはめには fitdistrplus を使用しています。
私がいつも受け取るエラーメッセージはこれです:
[1] "Error in optim(par = vstart, fn = fnobj, fix.arg = fix.arg, obs = data, : \n function cannot be evaluated at initial parameters\n"
attr(,"class")
[1] "try-error"
attr(,"condition")
<simpleError in optim(par = vstart, fn = fnobj, fix.arg = fix.arg, obs = data, ddistnam = ddistname, hessian = TRUE, method = meth, lower = lower, upper = upper, ...): function cannot be evaluated at initial parameters>
Error in fitdistrplus::fitdist(flowdata3$OEP, distr = "PIII", method = "mle", :
the function mle failed to estimate the parameters,
with the error code 100
エラーメッセージは理解できます。それが初期値を渡す正しい方法でない場合、それは何ですか? 誰にもアイデアがありますか?
乾杯、ロバート