R {fExtremes} を使用して、データ (ベクトル) の GEV 分布の最適なパラメーターを見つけています。しかし、次のエラーメッセージが表示されます
solve.default(fit$hessian) のエラー: Lapack ルーチン dgesv: システムは厳密に特異です: U[1,1] = 0
fit$hessian までさかのぼると、ヘッセ行列が特異な行列であり、すべての要素が 0 であることがわかりました。gevFit()のソース コード ( https://github.com/cran/fExtremes/blob/master/R/GevFit.R ) は、fit$hessian が optim() によって計算されることを示しています。出力パラメーターは、初期パラメーターとまったく同じ値です。この問題を引き起こすデータの問題は何でしょうか? ここにコードをコピーしました
> min(sample);
[1] 5.240909
> max(sample)
[1] 175.8677
> length(sample)
[1] 6789
> mean(sample)
[1] 78.04107
>para<-gevFit(sample, type = "mle")
Error in solve.default(fit$hessian) :
Lapack routine dgesv: system is exactly singular: U[1,1] = 0
fit = optim(theta, .gumLLH, hessian = TRUE, ..., tmp = data)
> fit
$par
xi -0.3129225
mu 72.5542497
beta 16.4450897
$value
[1] 1e+06
$counts
function gradient
4 NA
$convergence
[1] 0
$message
NULL
$hessian
xi mu beta
xi 0 0 0
mu 0 0 0
beta 0 0 0
Google ドキュメントでデータセットを更新しました: https://docs.google.com/spreadsheets/d/1IRRpjmdrrJPhNmfiLism_P0efV_Ot4HlEsa6kwMnljc/edit?usp=sharing