Oi, o mesmo pode ser mostrado para obter o parâmetro de forma e escala para o método de máxima verossimilhança modificado
19
Oi, o mesmo pode ser mostrado para obter o parâmetro de forma e escala para o método de máxima verossimilhança modificado
fitdistr(mydata, densfun="weibull")
emR
encontrar os parâmetros via MLE. Para criar um gráfico, use aqqPlot
função docar
pacote:qqPlot(mydata, distribution="weibull", shape=, scale=)
com os parâmetros de forma e escala encontradosfitdistr
.R
, que está disponível gratuitamente, você pode instalar e carregar o pacoteMASS
e usarfitdistr
com seus dados para calcular as estimativas de k e c. E então, você pode comparar seus dados com o weibull com os parâmetros estimados usandoqqPlot
ocar
pacote.MASS
ecar
digitando:install.packages(c("MASS", "car"))
. Carregue os pacotes digitando:library(MASS)
elibrary(car)
. 3. Importe seus dados paraR
, de preferência com um arquivo .txt. 4. Se os dados é chamadomy.data
o usofitdistr
da seguinte forma:fitdistr(my.data, distribution="weibull")
. 5. Faça um gráfico como eu descrevi no primeiro comentário comqqPlot
.Respostas:
Como o @zaynah postou nos comentários que os dados devem seguir uma distribuição Weibull, vou fornecer um breve tutorial sobre como estimar os parâmetros dessa distribuição usando o MLE (Estimativa de máxima verossimilhança). Há um post semelhante sobre a velocidade do vento e a distribuição Weibull no site.
R
, é grátisMASS
ecar
digitando:install.packages(c("MASS", "car"))
. Carregue-os digitando:library(MASS)
elibrary(car)
.R
. Se você tiver seus dados no Excel, por exemplo, salve-os como arquivo de texto delimitado (.txt) e importe-osR
comread.table
.fitdistr
para calcular as estimativas de máxima verossimilhança de sua distribuição weibull:fitdistr(my.data, densfun="weibull", lower = 0)
. Para ver um exemplo completo, consulte o link na parte inferior da resposta.qqPlot(my.data, distribution="weibull", shape=, scale=)
O tutorial de Vito Ricci sobre como ajustar a distribuição
R
é um bom ponto de partida sobre o assunto. E há várias postagens neste site sobre o assunto (veja também esta postagem ).Para ver um exemplo completo de como usar
fitdistr
, dê uma olhada nesta postagem .Vejamos um exemplo em
R
:As estimativas de máxima verossimilhança são próximas daquelas que definimos arbitrariamente na geração dos números aleatórios. Vamos comparar nossos dados usando um QQ-Plot com uma distribuição hipotética de Weibull com os parâmetros que estimamos
fitdistr
:Os pontos estão bem alinhados na linha e, principalmente, dentro do envelope de 95% de confiança. Concluímos que nossos dados são compatíveis com uma distribuição Weibull. Isso era esperado, é claro, já que amostramos nossos valores a partir de uma distribuição Weibull.
Estimativa de (forma) ec (escala) de uma distribuição Weibull sem MLEk c
Este artigo lista cinco métodos para estimar os parâmetros de uma distribuição Weibull para velocidades do vento. Eu vou explicar três deles aqui.
De médias e desvio padrão
Mínimos quadrados ajustados à distribuição observada
Velocidades medianas e quartis de vento
Comparison of the four methods
Here is an example in
R
comparing the four methods:All methods yield very similar results. The maximum likelihood approach has the advantage that the standard errors of the Weibull parameters are directly given.
Using bootstrap to add pointwise confidence intervals to the PDF or CDF
We can use a the non-parametric bootstrap to construct pointwise confidence intervals around the PDF and CDF of the estimated Weibull distribution. Here's an
R
script:fonte
distribution=weibull
from the car package, which will fit the paramaters via MLE & make the qq-plot in 1 step.car
calculates the MLE parameters automatically. If I generate a random variable with a weibull distribution (rweibull
) and use the commandqqPlot(rw, distribution="weibull")
I get an error message saying that must provide the parametersshape
andscale
toqqPlot
. Am I missing something?