我有一些数据,我想使用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
我想知道如何解决此错误?感谢您的帮助。
答案 0 :(得分: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