# data table with param values from the median curve of (1) the QDF model and (2) the local GEV fit
medp
## lnxID d type med.mu.x med.sigma.x med.xi.x gev.mu
## 1: dyrdalsvatn 1 DD 6.629573 1.792056 0.03743206 6.816863
## 2: dyrdalsvatn 1 J 6.702721 1.703989 0.04084315 6.816863
## 3: dyrdalsvatn 1 RJD 6.709828 1.733398 0.03600216 6.816863
## 4: dyrdalsvatn 24 DD 4.089810 1.096808 0.04040544 4.025240
## 5: dyrdalsvatn 24 J 4.092168 1.057974 0.03788926 4.025240
## ---
## 176: viksvatn 48 J 152.876390 33.213338 -0.12653890 152.160578
## 177: viksvatn 48 RJD 152.836132 33.278582 -0.12682042 152.160578
## 178: viksvatn 72 DD 148.746918 34.038084 -0.12907497 148.152551
## 179: viksvatn 72 J 149.594074 32.867014 -0.12870464 148.152551
## 180: viksvatn 72 RJD 148.951267 33.234232 -0.13046078 148.152551
## gev.sigma gev.xi
## 1: 1.480452 0.11158187
## 2: 1.480452 0.11158187
## 3: 1.480452 0.11158187
## 4: 1.139131 0.07703172
## 5: 1.139131 0.07703172
## ---
## 176: 33.052511 -0.09787224
## 177: 33.052511 -0.09787224
## 178: 31.986724 -0.12388234
## 179: 31.986724 -0.12388234
## 180: 31.986724 -0.12388234
## ---calculate the IQD
myIQD <- function(muQ,sigmaQ,xiQ,muG,sigmaG,xiG){
integrand <- function(x){
a = SpatialExtremes::pgev(x,loc=muQ, scale=sigmaQ, shape=xiQ)
b = SpatialExtremes::pgev(x,loc=muG, scale=sigmaG, shape=xiG)
return( (a-b)^2 )
}
iqd = integrate(integrand,-Inf,Inf)$value
return(iqd)
}
medp[,
iqd:=lapply(.SD,
function(cols) myIQD(muQ=med.mu.x,
sigmaQ=med.sigma.x,
xiQ=med.xi.x,
muG=gev.mu,
sigmaG=gev.sigma,
xiG=gev.xi)),
by = list(lnxID,d,type),
.SDcols = 4:9]
Which model is best grouped across stations and durations?
medp[,.(score=mean(iqd)),by=list(type)]
## type score
## 1: DD 0.03479781
## 2: J 0.03664582
## 3: RJD 0.04283840
Which model wins each station?
tf <- medp[,.(score=mean(iqd)),by=list(lnxID,type)]
winningmodeleachstation <- tf[tf[, .I[score == min(score)], by=lnxID]$V1]
setnames(winningmodeleachstation,"type", "w")
winningmodeleachstation
## lnxID w score
## 1: dyrdalsvatn DD 4.221255e-03
## 2: elgtjern J 1.061689e-03
## 3: etna RJD 9.089377e-03
## 4: grava RJD 8.836108e-03
## 5: grosettjern DD 5.977336e-04
## 6: gryta DD 1.010800e-03
## 7: hugdalbru J 2.019134e-01
## 8: manndalenbru RJD 1.068889e-02
## 9: oyungen DD 9.291191e-02
## 10: roykenes DD 3.493691e-02
## 11: sjodalsvatn DD 1.252005e-02
## 12: viksvatn J 2.089943e-06
tf
## lnxID type score
## 1: dyrdalsvatn DD 4.221255e-03
## 2: dyrdalsvatn J 4.375382e-03
## 3: dyrdalsvatn RJD 4.446831e-03
## 4: elgtjern DD 1.149447e-03
## 5: elgtjern J 1.061689e-03
## 6: elgtjern RJD 1.229821e-03
## 7: etna DD 1.069467e-02
## 8: etna J 1.224852e-02
## 9: etna RJD 9.089377e-03
## 10: grava DD 8.881172e-03
## 11: grava J 1.023195e-02
## 12: grava RJD 8.836108e-03
## 13: grosettjern DD 5.977336e-04
## 14: grosettjern J 7.066845e-04
## 15: grosettjern RJD 6.059088e-04
## 16: gryta DD 1.010800e-03
## 17: gryta J 2.193199e-03
## 18: gryta RJD 1.353265e-03
## 19: hugdalbru DD 2.339426e-01
## 20: hugdalbru J 2.019134e-01
## 21: hugdalbru RJD 2.591966e-01
## 22: manndalenbru DD 1.094474e-02
## 23: manndalenbru J 1.379276e-02
## 24: manndalenbru RJD 1.068889e-02
## 25: oyungen DD 9.291191e-02
## 26: oyungen J 1.191373e-01
## 27: oyungen RJD 1.382769e-01
## 28: roykenes DD 3.493691e-02
## 29: roykenes J 4.129107e-02
## 30: roykenes RJD 4.197315e-02
## 31: sjodalsvatn DD 1.252005e-02
## 32: sjodalsvatn J 3.279590e-02
## 33: sjodalsvatn RJD 3.835839e-02
## 34: viksvatn DD 5.762441e-03
## 35: viksvatn J 2.089943e-06
## 36: viksvatn RJD 5.485069e-06
## lnxID type score