Disons, disons, les données suivantes:
8232302 684531 116857 89724 82267 75988 63871
23718 1696 436 439 248 235
Vous voulez un moyen simple d'adapter cela (et plusieurs autres jeux de données) à une distribution de Pareto. Idéalement, il produirait les valeurs théoriques correspondantes, moins idéalement les paramètres.
r
pareto-distribution
Felix
la source
la source
Réponses:
Eh bien, si vous avez un échantillon d'une distribution de Pareto avec les paramètres et (où est le paramètre de limite inférieure et est le paramètre de forme), la probabilité logarithmique de cela l'échantillon est: m > 0 α > 0 m αX1,...,Xn m>0 α>0 m α
il s'agit d'une augmentation monotone de , de sorte que le maximiseur est la plus grande valeur cohérente avec les données observées. Puisque le paramètre définit la borne inférieure du support pour la distribution de Pareto, l'optimum estmm m
qui ne dépend pas de . Ensuite, en utilisant des astuces de calcul ordinaires, le MLE pour doit satisfaireαα α
une algèbre simple nous dit que le MLE de estα
Dans de nombreux sens importants (par exemple, efficacité asymptotique optimale en ce qu'elle atteint la limite inférieure de Cramer-Rao), c'est la meilleure façon d'ajuster les données à une distribution de Pareto. Le code R ci - dessous calcule le MLE pour un ensemble de données,
X
.Edit: Sur la base du commentaire de @cardinal et I ci-dessous, nous pouvons également noter que est l'inverse de la moyenne de l'échantillon des , ce qui arrive à ont une distribution exponentielle. Par conséquent, si nous avons accès à un logiciel qui peut s'adapter à une distribution exponentielle (ce qui est plus probable, car il semble se produire dans de nombreux problèmes statistiques), l'ajustement d'une distribution de Pareto peut être accompli en transformant l'ensemble de données de cette manière et en l'adaptant à une distribution exponentielle à l'échelle transformée. log(Xi/ m )α^ log(Xi/m^)
la source
Vous pouvez utiliser la
fitdist
fonction fournie dans lefitdistrplus
package:la source
library(fitdistrplus)
?library(actuar)
est requis pour que cela fonctionne.