J'ai un ensemble variable de réponses qui sont exprimées sous forme d'intervalle tel que l'exemple ci-dessous.
> head(left)
[1] 860 516 430 1118 860 602
> head(right)
[1] 946 602 516 1204 946 688
où gauche est la limite inférieure et droite est la limite supérieure de la réponse. Je veux estimer les paramètres en fonction de la distribution log-normale.
Pendant un moment, lorsque j'essayais de calculer directement les probabilités, je me débattais avec le fait que, comme les deux bornes sont réparties le long d'un ensemble de paramètres différent, j'obtenais des valeurs négatives comme ci-dessous:
> Pr_high=plnorm(wta_high,meanlog_high,sdlog_high)
> Pr_low=plnorm(wta_low, meanlog_low,sdlog_low)
> Pr=Pr_high-Pr_low
>
> head(Pr)
[1] -0.0079951419 0.0001207749 0.0008002343 -0.0009705125 -0.0079951419 -0.0022395514
Je ne pouvais pas vraiment comprendre comment le résoudre et j'ai décidé d'utiliser le point médian de l'intervalle à la place, ce qui est un bon compromis jusqu'à ce que je trouve la fonction mledist qui extrait la probabilité de log d'une réponse d'intervalle, voici le résumé que j'obtiens:
> mledist(int, distr="lnorm")
$estimate
meanlog sdlog
6.9092257 0.3120138
$convergence
[1] 0
$loglik
[1] -152.1236
$hessian
meanlog sdlog
meanlog 570.760358 7.183723
sdlog 7.183723 1112.098031
$optim.function
[1] "optim"
$fix.arg
NULL
Warning messages:
1: In plnorm(q = c(946L, 602L, 516L, 1204L, 946L, 688L, 1376L, 1376L, :
NaNs produced
2: In plnorm(q = c(860L, 516L, 430L, 1118L, 860L, 602L, 1290L, 1290L, :
NaNs produced
Les valeurs des paramètres semblent avoir un sens et la probabilité de log est plus grande que toute autre méthode que j'ai utilisée (distribution à mi-chemin ou distribution de l'une ou l'autre des bornes).
Il y a un message d'avertissement que je ne comprends pas. Quelqu'un pourrait-il me dire si je fais la bonne chose et que signifie ce message?
Appréciez l'aide!
fitdistrplus
.