Hola, se puede mostrar lo mismo para obtener parámetros de forma y escala para el método modificado de máxima verosimilitud
19
Hola, se puede mostrar lo mismo para obtener parámetros de forma y escala para el método modificado de máxima verosimilitud
fitdistr(mydata, densfun="weibull")
enR
encontrar los parámetros a través de MLE. Para hacer un gráfico, use laqqPlot
función delcar
paquete:qqPlot(mydata, distribution="weibull", shape=, scale=)
con los parámetros de forma y escala que ha encontradofitdistr
.R
, which is freely available, you can install and load the packageMASS
and usefitdistr
with your data to calculate the estimates of k and c. And then, you can compare your data with the weibull with the estimated parameters usingqqPlot
from thecar
package.MASS
ycar
escribiendo:install.packages(c("MASS", "car"))
. Cargue los paquetes escribiendo:library(MASS)
ylibrary(car)
. 3. Importe sus datosR
, preferiblemente con un archivo .txt. 4. Si los datos se denominamy.data
el usofitdistr
de la siguiente manera:fitdistr(my.data, distribution="weibull")
. 5. Haz un gráfico como describí en el primer comentario conqqPlot
.Respuestas:
Debido a que @zaynah publicó en los comentarios que se cree que los datos siguen una distribución de Weibull, voy a proporcionar un breve tutorial sobre cómo estimar los parámetros de dicha distribución usando MLE (Estimación de máxima verosimilitud). Hay una publicación similar sobre las velocidades del viento y la distribución de Weibull en el sitio.
R
, es gratisMASS
ycar
escribiendo:install.packages(c("MASS", "car"))
. Cárguelos escribiendo:library(MASS)
ylibrary(car)
.R
. Si tiene sus datos en Excel, por ejemplo, guárdelos como archivo de texto delimitado (.txt) e impórtelosR
conread.table
.fitdistr
para calcular las estimaciones de máxima verosimilitud de la distribución de Weibull:fitdistr(my.data, densfun="weibull", lower = 0)
. Para ver un ejemplo completamente resuelto, vea el enlace al final de la respuesta.qqPlot(my.data, distribution="weibull", shape=, scale=)
El tutorial de Vito Ricci sobre la distribución de ajustes
R
es un buen punto de partida al respecto. Y hay numerosas publicaciones en este sitio sobre el tema (vea esta publicación también).Para ver un ejemplo completo de cómo usarlo
fitdistr
, eche un vistazo a esta publicación .Veamos un ejemplo en
R
:Las estimaciones de máxima verosimilitud son cercanas a las que establecemos arbitrariamente en la generación de los números aleatorios. Comparemos nuestros datos usando un QQ-Plot con una distribución hipotética de Weibull con los parámetros que hemos estimado con
fitdistr
:Los puntos están bien alineados en la línea y principalmente dentro del sobre de confianza del 95%. Llegaríamos a la conclusión de que nuestros datos son compatibles con una distribución de Weibull. Esto era de esperar, por supuesto, ya que hemos muestreado nuestros valores de una distribución de Weibull.
Estimar la (forma) yc (escala) de una distribución de Weibull sin MLEk C
Este papel enumera cinco métodos para estimar los parámetros de una distribución de Weibull para las velocidades del viento. Voy a explicar tres de ellos aquí.
De medias y desviación estándar
Los mínimos cuadrados se ajustan a la distribución observada
Median and quartile wind speeds
If you don't have the complete observed wind speeds but the medianVm and quartiles V0.25 and V0.75 [p(V≤V0.25)=0.25,p(V≤V0.75)=0.75] , then c and k can be computed by the relations
Comparación de los cuatro métodos.
Aquí hay un ejemplo al
R
comparar los cuatro métodos:Todos los métodos producen resultados muy similares. El enfoque de máxima verosimilitud tiene la ventaja de que los errores estándar de los parámetros de Weibull se dan directamente.
Usando bootstrap para agregar intervalos de confianza puntuales al PDF o CDF
Podemos usar un bootstrap no paramétrico para construir intervalos de confianza puntuales alrededor del PDF y el CDF de la distribución estimada de Weibull. Aquí hay un
R
guión:fuente
distribution=weibull
del paquete del automóvil, que se ajustará a los parámetros a través de MLE y hará qq-plot en 1 paso.car
calcula los parámetros MLE automáticamente. Si genero una variable aleatoria con una distribución weibull (rweibull
) y uso el comandoqqPlot(rw, distribution="weibull")
, recibo un mensaje de error que dice que debe proporcionar los parámetrosshape
yscale
paraqqPlot
. ¿Me estoy perdiendo de algo?