在R中使用`extRemes`拟合广义极值(GEV)时出错?

问题描述 投票:1回答:1

我有一些数据,我想在R中使用extRemes包来拟合广义极值(GEV)分布。但是,出现错误:

library(extRemes)
Mydata = c(6,3,3,3,5,5,4,3,5,5,4,3,4,4,6,5,5,4,5,2,6,4,6,5,3,3,8,3,4,4,6,6,6,6,6,5,6,6,5,5)
fit_gev <- fevd(x=Mydata, method = "MLE", type="GEV", period.basis = "year")
summary(fit_gev)

Error in diag(cov.theta) : invalid 'nrow' value (too large or NA)
In addition: Warning message:
In diag(cov.theta) : NAs introduced by coercion

我想知道如何解决这个错误?谢谢你的帮助。

r data-fitting
1个回答
1
投票

您可以使用EnvStats包进行调整,如下所示:

library(EnvStats)
# Data
Mydata =
c(6,3,3,3,5,5,4,3,5,5,4,3,4,4,6,5,5,4,5,2,6,4,6,5,3,3,8,3,4,4,6,6,6,6,6,5,6,6,5,5)    
# Generalized Extreme Value (EnvStats)
egevd(Mydata, method = "pwme")# (Method: probability-weighted moments)

Results of Distribution Parameter Estimation
--------------------------------------------

Assumed Distribution:            Generalized Extreme Value

Estimated Parameter(s):          location = 4.268896
                                 scale    = 1.314489
                                 shape    = 0.353434

Estimation Method:               Unbiased pwme

Data:                            Mydata

Sample Size:                     40
© www.soinside.com 2019 - 2024. All rights reserved.