diff --git a/data/table_files/met_header_columns_V11.0.txt b/data/table_files/met_header_columns_V11.0.txt index 0c30295879..4e414f6169 100644 --- a/data/table_files/met_header_columns_V11.0.txt +++ b/data/table_files/met_header_columns_V11.0.txt @@ -1,6 +1,6 @@ V11.0 : STAT : CNT : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FBAR FBAR_NCL FBAR_NCU FBAR_BCL FBAR_BCU FSTDEV FSTDEV_NCL FSTDEV_NCU FSTDEV_BCL FSTDEV_BCU OBAR OBAR_NCL OBAR_NCU OBAR_BCL OBAR_BCU OSTDEV OSTDEV_NCL OSTDEV_NCU OSTDEV_BCL OSTDEV_BCU PR_CORR PR_CORR_NCL PR_CORR_NCU PR_CORR_BCL PR_CORR_BCU SP_CORR KT_CORR RANKS FRANK_TIES ORANK_TIES ME ME_NCL ME_NCU ME_BCL ME_BCU ESTDEV ESTDEV_NCL ESTDEV_NCU ESTDEV_BCL ESTDEV_BCU MBIAS MBIAS_BCL MBIAS_BCU MAE MAE_BCL MAE_BCU MSE MSE_BCL MSE_BCU BCMSE BCMSE_BCL BCMSE_BCU RMSE RMSE_BCL RMSE_BCU E10 E10_BCL E10_BCU E25 E25_BCL E25_BCU E50 E50_BCL E50_BCU E75 E75_BCL E75_BCU E90 E90_BCL E90_BCU EIQR EIQR_BCL EIQR_BCU MAD MAD_BCL MAD_BCU ANOM_CORR ANOM_CORR_NCL ANOM_CORR_NCU ANOM_CORR_BCL ANOM_CORR_BCU ME2 ME2_BCL ME2_BCU MSESS MSESS_BCL MSESS_BCU RMSFA RMSFA_BCL RMSFA_BCU RMSOA RMSOA_BCL RMSOA_BCU ANOM_CORR_UNCNTR ANOM_CORR_UNCNTR_BCL ANOM_CORR_UNCNTR_BCU SI SI_BCL SI_BCU -V11.0 : STAT : CTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FY_OY FY_ON FN_OY FN_ON -V11.0 : STAT : CTS : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL BASER BASER_NCL BASER_NCU BASER_BCL BASER_BCU FMEAN FMEAN_NCL FMEAN_NCU FMEAN_BCL FMEAN_BCU ACC ACC_NCL ACC_NCU ACC_BCL ACC_BCU FBIAS FBIAS_BCL FBIAS_BCU PODY PODY_NCL PODY_NCU PODY_BCL PODY_BCU PODN PODN_NCL PODN_NCU PODN_BCL PODN_BCU POFD POFD_NCL POFD_NCU POFD_BCL POFD_BCU FAR FAR_NCL FAR_NCU FAR_BCL FAR_BCU CSI CSI_NCL CSI_NCU CSI_BCL CSI_BCU GSS GSS_BCL GSS_BCU HK HK_NCL HK_NCU HK_BCL HK_BCU HSS HSS_BCL HSS_BCU ODDS ODDS_NCL ODDS_NCU ODDS_BCL ODDS_BCU LODDS LODDS_NCL LODDS_NCU LODDS_BCL LODDS_BCU ORSS ORSS_NCL ORSS_NCU ORSS_BCL ORSS_BCU EDS EDS_NCL EDS_NCU EDS_BCL EDS_BCU SEDS SEDS_NCL SEDS_NCU SEDS_BCL SEDS_BCU EDI EDI_NCL EDI_NCU EDI_BCL EDI_BCU SEDI SEDI_NCL SEDI_NCU SEDI_BCL SEDI_BCU BAGSS BAGSS_BCL BAGSS_BCU +V11.0 : STAT : CTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FY_OY FY_ON FN_OY FN_ON EC_VALUE +V11.0 : STAT : CTS : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL BASER BASER_NCL BASER_NCU BASER_BCL BASER_BCU FMEAN FMEAN_NCL FMEAN_NCU FMEAN_BCL FMEAN_BCU ACC ACC_NCL ACC_NCU ACC_BCL ACC_BCU FBIAS FBIAS_BCL FBIAS_BCU PODY PODY_NCL PODY_NCU PODY_BCL PODY_BCU PODN PODN_NCL PODN_NCU PODN_BCL PODN_BCU POFD POFD_NCL POFD_NCU POFD_BCL POFD_BCU FAR FAR_NCL FAR_NCU FAR_BCL FAR_BCU CSI CSI_NCL CSI_NCU CSI_BCL CSI_BCU GSS GSS_BCL GSS_BCU HK HK_NCL HK_NCU HK_BCL HK_BCU HSS HSS_BCL HSS_BCU ODDS ODDS_NCL ODDS_NCU ODDS_BCL ODDS_BCU LODDS LODDS_NCL LODDS_NCU LODDS_BCL LODDS_BCU ORSS ORSS_NCL ORSS_NCU ORSS_BCL ORSS_BCU EDS EDS_NCL EDS_NCU EDS_BCL EDS_BCU SEDS SEDS_NCL SEDS_NCU SEDS_BCL SEDS_BCU EDI EDI_NCL EDI_NCU EDI_BCL EDI_BCU SEDI SEDI_NCL SEDI_NCU SEDI_BCL SEDI_BCU BAGSS BAGSS_BCL BAGSS_BCU HSS_EC HSS_EC_BCL HSS_EC_BCU EC_VALUE V11.0 : STAT : FHO : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL F_RATE H_RATE O_RATE V11.0 : STAT : ISC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL TILE_DIM TILE_XLL TILE_YLL NSCALE ISCALE MSE ISC FENERGY2 OENERGY2 BASER FBIAS V11.0 : STAT : MCTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL (N_CAT) F[0-9]*_O[0-9]* EC_VALUE diff --git a/data/table_files/stat_column_description.txt b/data/table_files/stat_column_description.txt index b5a10899d0..391f8cebcf 100644 --- a/data/table_files/stat_column_description.txt +++ b/data/table_files/stat_column_description.txt @@ -1,200 +1,274 @@ -FHO_TOTAL "Total number of matched pairs" -FHO_F_RATE "Forecast rate" -FHO_H_RATE "Hit rate" -FHO_O_RATE "Observation rate" -CTC_TOTAL "Total number of matched pairs" -CTC_FY_OY "Number of forecast yes and observation yes" -CTC_FY_ON "Number of forecast yes and observation no" -CTC_FN_OY "Number of forecast no and observation yes" -CTC_FN_ON "Number of forecast no and observation no" -CTS_TOTAL "Total number of matched pairs" -CTS_BASER "Base rate" -CTS_BASER_NCL "Base rate normal confidence interval lower limit" -CTS_BASER_NCU "Base rate normal confidence interval upper limit" -CTS_BASER_BCL "Base rate bootstrap confidence interval lower limit" -CTS_BASER_BCU "Base rate bootstrap confidence interval upper limit" -CTS_FMEAN "Forecast mean" -CTS_FMEAN_NCL "Forecast mean normal confidence interval lower limit" -CTS_FMEAN_NCU "Forecast mean normal confidence interval upper limit" -CTS_FMEAN_BCL "Forecast mean bootstrap confidence interval lower limit" -CTS_FMEAN_BCU "Forecast mean bootstrap confidence interval upper limit" -CTS_ACC "Accuracy" -CTS_ACC_NCL "Accuracy normal confidence interval lower limit" -CTS_ACC_NCU "Accuracy normal confidence interval upper limit" -CTS_ACC_BCL "Accuracy bootstrap confidence interval lower limit" -CTS_ACC_BCU "Accuracy bootstrap confidence interval upper limit" -CTS_FBIAS "Frequency bias" -CTS_FBIAS_BCL "Frequency bias bootstrap confidence interval lower limit" -CTS_FBIAS_BCU "Frequency bias bootstrap confidence interval upper limit" -CTS_PODY "Probability of detecting yes" -CTS_PODY_NCL "Probability of detecting yes normal confidence interval lower limit" -CTS_PODY_NCU "Probability of detecting yes normal confidence interval upper limit" -CTS_PODY_BCL "Probability of detecting yes bootstrap confidence interval lower limit" -CTS_PODY_BCU "Probability of detecting yes bootstrap confidence interval upper limit" -CTS_PODN "Probability of detecting no" -CTS_PODN_NCL "Probability of detecting no normal confidence interval lower limit" -CTS_PODN_NCU "Probability of detecting no normal confidence interval upper limit" -CTS_PODN_BCL "Probability of detecting no bootstrap confidence interval lower limit" -CTS_PODN_BCU "Probability of detecting no bootstrap confidence interval upper limit" -CTS_POFD "Probability of false detection" -CTS_POFD_NCL "Probability of false detection normal confidence interval lower limit" -CTS_POFD_NCU "Probability of false detection normal confidence interval upper limit" -CTS_POFD_BCL "Probability of false detection bootstrap confidence interval lower limit" -CTS_POFD_BCU "Probability of false detection bootstrap confidence interval upper limit" -CTS_FAR "False alarm ratio" -CTS_FAR_NCL "False alarm ratio normal confidence interval lower limit" -CTS_FAR_NCU "False alarm ratio normal confidence interval upper limit" -CTS_FAR_BCL "False alarm ratio bootstrap confidence interval lower limit" -CTS_FAR_BCU "False alarm ratio bootstrap confidence interval upper limit" -CTS_CSI "Critical success index" -CTS_CSI_NCL "Critical success index normal confidence interval lower limit" -CTS_CSI_NCU "Critical success index normal confidence interval upper limit" -CTS_CSI_BCL "Critical success index bootstrap confidence interval lower limit" -CTS_CSI_BCU "Critical success index bootstrap confidence interval upper limit" -CTS_GSS "Gilbert Skill Score" -CTS_GSS_BCL "Gilbert Skill Score bootstrap confidence interval lower limit" -CTS_GSS_BCU "Gilbert Skill Score bootstrap confidence interval upper limit" -CTS_HK "Hanssen-Kuipers discriminant" -CTS_HK_NCL "Hanssen-Kuipers discriminant normal confidence interval lower limit" -CTS_HK_NCU "Hanssen-Kuipers discriminant normal confidence interval upper limit" -CTS_HK_BCL "Hanssen-Kuipers discriminant bootstrap confidence interval lower limit" -CTS_HK_BCU "Hanssen-Kuipers discriminant bootstrap confidence interval upper limit" -CTS_HSS "Heidke skill score" -CTS_HSS_BCL "Heidke skill score bootstrap confidence interval lower limit" -CTS_HSS_BCU "Heidke skill score bootstrap confidence interval upper limit" -CTS_ODDS "Odds ratio" -CTS_ODDS_NCL "Odds ratio normal confidence interval lower limit" -CTS_ODDS_NCU "Odds ratio normal confidence interval upper limit" -CTS_ODDS_BCL "Odds ratio bootstrap confidence interval lower limit" -CTS_ODDS_BCU "Odds ratio bootstrap confidence interval upper limit" -MCTC_TOTAL "Total number of matched pairs" -MCTC_N_CAT "Number of categories in each dimension of the contingency table" -MCTC_FI_OJ "Count of events in forecast category i and observation category j" -MCTS_TOTAL "Total number of matched pairs" -MCTS_N_CAT "Number of categories in each dimension of the contingency table" -MCTS_ACC "Accuracy" -MCTS_ACC_NCL "Accuracy normal confidence interval lower limit" -MCTS_ACC_NCU "Accuracy normal confidence interval upper limit" -MCTS_ACC_BCL "Accuracy bootstrap confidence interval lower limit" -MCTS_ACC_BCU "Accuracy bootstrap confidence interval upper limit" -MCTS_HK "Hanssen-Kuipers discriminant" -MCTS_HK_BCL "Hanssen-Kuipers discriminant bootstrap confidence interval lower limit" -MCTS_HK_BCU "Hanssen-Kuipers discriminant bootstrap confidence interval upper limit" -MCTS_HSS "Heidke skill score" -MCTS_HSS_BCL "Heidke skill score bootstrap confidence interval lower limit" -MCTS_HSS_BCU "Heidke skill score bootstrap confidence interval upper limit" -MCTS_GER "Gerrity skill score" -MCTS_GER_BCL "Gerrity skill score bootstrap confidence interval lower limit" -MCTS_GER_BCU "Gerrity skill score bootstrap confidence interval upper limit" -MCTS_HSS_EC "Heidke skill score with expected correct" -MCTS_HSS_EC_BCL "Heidke skill score with expected correct bootstrap confidence interval lower limit" -MCTS_HSS_EC_BCU "Heidke skill score with expected correct bootstrap confidence interval upper limit" -MCTS_EC_VALUE "Heidke skill score expected correct value" -CNT_TOTAL "Total number of matched pairs" -CNT_FBAR "Forecast mean" -CNT_FBAR_NCL "Forecast mean normal confidence interval lower limit" -CNT_FBAR_NCU "Forecast mean normal confidence interval upper limit" -CNT_FBAR_BCL "Forecast mean bootstrap confidence interval lower limit" -CNT_FBAR_BCU "Forecast mean bootstrap confidence interval upper limit" -CNT_FSTDEV "Forecast standard deviation" -CNT_FSTDEV_NCL "Forecast standard deviation normal confidence interval lower limit" -CNT_FSTDEV_NCU "Forecast standard deviation normal confidence interval upper limit" -CNT_FSTDEV_BCL "Forecast standard deviation bootstrap confidence interval lower limit" -CNT_FSTDEV_BCU "Forecast standard deviation bootstrap confidence interval upper limit" -CNT_OBAR "Observation mean" -CNT_OBAR_NCL "Observation mean normal confidence interval lower limit" -CNT_OBAR_NCU "Observation mean normal confidence interval upper limit" -CNT_OBAR_BCL "Observation mean bootstrap confidence interval lower limit" -CNT_OBAR_BCU "Observation mean bootstrap confidence interval upper limit" -CNT_OSTDEV "Observation standard deviation" -CNT_OSTDEV_NCL "Observation standard deviation normal confidence interval lower limit" -CNT_OSTDEV_NCU "Observation standard deviation normal confidence interval upper limit" -CNT_OSTDEV_BCL "Observation standard deviation bootstrap confidence interval lower limit" -CNT_OSTDEV_BCU "Observation standard deviation bootstrap confidence interval upper limit" -CNT_PR_CORR "Pearson correlation coefficient" -CNT_PR_CORR_NCL "Pearson correlation coefficient normal confidence interval lower limit" -CNT_PR_CORR_NCU "Pearson correlation coefficient normal confidence interval upper limit" -CNT_PR_CORR_BCL "Pearson correlation coefficient bootstrap confidence interval lower limit" -CNT_PR_CORR_BCU "Pearson correlation coefficient bootstrap confidence interval upper limit" -CNT_SP_CORR "Spearman's rank correlation coefficient" -CNT_KT_CORR "Kendall's tau statistic" -CNT_RANKS "Number of ranks used in computing Kendall"s tau statistic" -CNT_FRANK_TIES "Number of tied forecast ranks used in computing Kendall"s tau statistic" -CNT_ORANK_TIES "Number of tied observation ranks used in computing Kendall"s tau statistic" -CNT_ME "Mean error" -CNT_ME_NCL "Mean error normal confidence interval lower limit" -CNT_ME_NCU "Mean error normal confidence interval upper limit" -CNT_ME_BCL "Mean error bootstrap confidence interval lower limit" -CNT_ME_BCU "Mean error bootstrap confidence interval upper limit" -CNT_ESTDEV "Standard deviation of the error" -CNT_ESTDEV_NCL "Standard deviation of the error normal confidence interval lower limit" -CNT_ESTDEV_NCU "Standard deviation of the error normal confidence interval upper limit" -CNT_ESTDEV_BCL "Standard deviation of the error bootstrap confidence interval lower limit" -CNT_ESTDEV_BCU "Standard deviation of the error bootstrap confidence interval upper limit" -CNT_MBIAS "Multiplicative bias" -CNT_MBIAS_BCL "Multiplicative bias bootstrap confidence interval lower limit" -CNT_MBIAS_BCU "Multiplicative bias bootstrap confidence interval upper limit" -CNT_MAE "Mean absolute error" -CNT_MAE_BCL "Mean absolute error bootstrap confidence interval lower limit" -CNT_MAE_BCU "Mean absolute error bootstrap confidence interval upper limit" -CNT_MSE "Mean squared error" -CNT_MSE_BCL "Mean squared error bootstrap confidence interval lower limit" -CNT_MSE_BCU "Mean squared error bootstrap confidence interval upper limit" -CNT_BCMSE "Bias-corrected mean squared error" -CNT_BCMSE_BCL "Bias-corrected mean squared error bootstrap confidence interval lower limit" -CNT_BCMSE_BCU "Bias-corrected mean squared error bootstrap confidence interval upper limit" -CNT_RMSE "Root mean squared error" -CNT_RMSE_BCL "Root mean squared error bootstrap confidence interval lower limit" -CNT_RMSE_BCU "Root mean squared error bootstrap confidence interval upper limit" -CNT_E10 "10th percentile of the error" -CNT_E10_BCL "10th percentile of the error bootstrap confidence interval lower limit" -CNT_E10_BCU "10th percentile of the error bootstrap confidence interval upper limit" -CNT_E25 "25th percentile of the error" -CNT_E25_BCL "25th percentile of the error bootstrap confidence interval lower limit" -CNT_E25_BCU "25th percentile of the error bootstrap confidence interval upper limit" -CNT_E50 "50th percentile of the error" -CNT_E50_BCL "50th percentile of the error bootstrap confidence interval lower limit" -CNT_E50_BCU "50th percentile of the error bootstrap confidence interval upper limit" -CNT_E75 "75th percentile of the error" -CNT_E75_BCL "75th percentile of the error bootstrap confidence interval lower limit" -CNT_E75_BCU "75th percentile of the error bootstrap confidence interval upper limit" -CNT_E90 "90th percentile of the error" -CNT_E90_BCL "90th percentile of the error bootstrap confidence interval lower limit" -CNT_E90_BCU "90th percentile of the error bootstrap confidence interval upper limit" -SL1L2_TOTAL "Total number of matched pairs" -SL1L2_FBAR "Mean of the forecast: mean(f)" -SL1L2_OBAR "Mean of the observation: mean(o)" -SL1L2_FOBAR "Mean of the product of the forecast and observation: mean(f*o)" -SL1L2_FFBAR "Mean of the forecast squared: mean(f*f)" -SL1L2_OOBAR "Mean of the observation squared: mean(o*o)" -PCT_TOTAL "Total number of matched pairs" -PCT_N_THRESH "Number of probability thresholds" -PCT_THRESH_I "The i-th probability threshold" -PCT_OY_I "Number of observation yes when forecast is between the i-th and (i+1)-th probability thresholds" -PCT_ON_I "Number of observation no when forecast is between the i-th and (i+1)-th probability thresholds" -PSTD_TOTAL "Total number of matched pairs" -PSTD_N_THRESH "Number of probability thresholds" -PSTD_BASER "Base rate" -PSTD_BASER_NCL "Base rate normal confidence interval lower limit" -PSTD_BASER_NCU "Base rate normal confidence interval upper limit" -PSTD_RELIABILITY "Reliability" -PSTD_RESOLUTION "Resolution" -PSTD_UNCERTAINTY "Uncertainty" -PSTD_ROC_AUC "Area under the receiver operating characteristic curve" -PSTD_BRIER "Brier score" -PSTD_BRIER_NCL "Brier score normal confidence interval lower limit" -PSTD_BRIER_NCU "Brier score normal confidence interval upper limit" -PJC_TOTAL "Total number of matched pairs" -PJC_N_THRESH "Number of probability thresholds" -PJC_THRESH_I "The i-th probability threshold" -PJC_OY_TP_I "Number of observation yes when forecast is between the i-th and (i+1)-th probability thresholds as a proportion of the total OY" -PJC_ON_TP_I "Number of observation no when forecast is between the i-th and (i+1)-th probability thresholds as a proportion of the total ON" -PJC_CALIBRATION_I "Calibration when forecast is between the i-th and (i+1)-th probability thresholds" -PJC_REFINEMENT_I "Refinement when forecast is between the i-th and (i+1)-th probability thresholds" -PJC_LIKELIHOOD_I "Likelihodd when forecast is between the i-th and (i+1)-th probability thresholds" -PJC_BASER_I "Base rate when forecast is between the i-th and (i+1)-th probability thresholds" -PRC_TOTAL "Total number of matched pairs" -PRC_N_THRESH "Number of probability thresholds" -PRC_THRESH_I "The i-th probability threshold" -PRC_PODY_I "Probability of detecting yes when forecast is between the i-th and (i+1)-th probability thresholds" -PRC_POFD_I "Probability of false detection when forecast is between the i-th and (i+1)-th probability thresholds" +FHO_TOTAL "Total number of matched pairs" +FHO_F_RATE "Forecast rate" +FHO_H_RATE "Hit rate" +FHO_O_RATE "Observation rate" +CTC_TOTAL "Total number of matched pairs" +CTC_FY_OY "Number of forecast yes and observation yes" +CTC_FY_ON "Number of forecast yes and observation no" +CTC_FN_OY "Number of forecast no and observation yes" +CTC_FN_ON "Number of forecast no and observation no" +CTC_EC_VALUE "Heidke skill score expected correct value" +CTS_TOTAL "Total number of matched pairs" +CTS_BASER "Base rate" +CTS_BASER_NCL "Base rate normal confidence interval lower limit" +CTS_BASER_NCU "Base rate normal confidence interval upper limit" +CTS_BASER_BCL "Base rate bootstrap confidence interval lower limit" +CTS_BASER_BCU "Base rate bootstrap confidence interval upper limit" +CTS_FMEAN "Forecast mean" +CTS_FMEAN_NCL "Forecast mean normal confidence interval lower limit" +CTS_FMEAN_NCU "Forecast mean normal confidence interval upper limit" +CTS_FMEAN_BCL "Forecast mean bootstrap confidence interval lower limit" +CTS_FMEAN_BCU "Forecast mean bootstrap confidence interval upper limit" +CTS_ACC "Accuracy" +CTS_ACC_NCL "Accuracy normal confidence interval lower limit" +CTS_ACC_NCU "Accuracy normal confidence interval upper limit" +CTS_ACC_BCL "Accuracy bootstrap confidence interval lower limit" +CTS_ACC_BCU "Accuracy bootstrap confidence interval upper limit" +CTS_FBIAS "Frequency bias" +CTS_FBIAS_BCL "Frequency bias bootstrap confidence interval lower limit" +CTS_FBIAS_BCU "Frequency bias bootstrap confidence interval upper limit" +CTS_PODY "Probability of detecting yes" +CTS_PODY_NCL "Probability of detecting yes normal confidence interval lower limit" +CTS_PODY_NCU "Probability of detecting yes normal confidence interval upper limit" +CTS_PODY_BCL "Probability of detecting yes bootstrap confidence interval lower limit" +CTS_PODY_BCU "Probability of detecting yes bootstrap confidence interval upper limit" +CTS_PODN "Probability of detecting no" +CTS_PODN_NCL "Probability of detecting no normal confidence interval lower limit" +CTS_PODN_NCU "Probability of detecting no normal confidence interval upper limit" +CTS_PODN_BCL "Probability of detecting no bootstrap confidence interval lower limit" +CTS_PODN_BCU "Probability of detecting no bootstrap confidence interval upper limit" +CTS_POFD "Probability of false detection" +CTS_POFD_NCL "Probability of false detection normal confidence interval lower limit" +CTS_POFD_NCU "Probability of false detection normal confidence interval upper limit" +CTS_POFD_BCL "Probability of false detection bootstrap confidence interval lower limit" +CTS_POFD_BCU "Probability of false detection bootstrap confidence interval upper limit" +CTS_FAR "False alarm ratio" +CTS_FAR_NCL "False alarm ratio normal confidence interval lower limit" +CTS_FAR_NCU "False alarm ratio normal confidence interval upper limit" +CTS_FAR_BCL "False alarm ratio bootstrap confidence interval lower limit" +CTS_FAR_BCU "False alarm ratio bootstrap confidence interval upper limit" +CTS_CSI "Critical success index" +CTS_CSI_NCL "Critical success index normal confidence interval lower limit" +CTS_CSI_NCU "Critical success index normal confidence interval upper limit" +CTS_CSI_BCL "Critical success index bootstrap confidence interval lower limit" +CTS_CSI_BCU "Critical success index bootstrap confidence interval upper limit" +CTS_GSS "Gilbert Skill Score" +CTS_GSS_BCL "Gilbert Skill Score bootstrap confidence interval lower limit" +CTS_GSS_BCU "Gilbert Skill Score bootstrap confidence interval upper limit" +CTS_HK "Hanssen-Kuipers discriminant" +CTS_HK_NCL "Hanssen-Kuipers discriminant normal confidence interval lower limit" +CTS_HK_NCU "Hanssen-Kuipers discriminant normal confidence interval upper limit" +CTS_HK_BCL "Hanssen-Kuipers discriminant bootstrap confidence interval lower limit" +CTS_HK_BCU "Hanssen-Kuipers discriminant bootstrap confidence interval upper limit" +CTS_HSS "Heidke skill score" +CTS_HSS_BCL "Heidke skill score bootstrap confidence interval lower limit" +CTS_HSS_BCU "Heidke skill score bootstrap confidence interval upper limit" +CTS_ODDS "Odds ratio" +CTS_ODDS_NCL "Odds ratio normal confidence interval lower limit" +CTS_ODDS_NCU "Odds ratio normal confidence interval upper limit" +CTS_ODDS_BCL "Odds ratio bootstrap confidence interval lower limit" +CTS_ODDS_BCU "Odds ratio bootstrap confidence interval upper limit" +CTS_LODDS "Logarithm of the Odds Ratio" +CTS_LODDS_NCL "Logarithm of the Odds Ratio normal confidence interval lower limit" +CTS_LODDS_NCU "Logarithm of the Odds Ratio normal confidence interval upper limit" +CTS_LODDS_BCL "Logarithm of the Odds Ratio bootstrap confidence interval lower limit" +CTS_LODDS_BCU "Logarithm of the Odds Ratio bootstrap confidence interval upper limit" +CTS_ORSS "Odds Ratio Skill Score" +CTS_ORSS_NCL "Odds Ratio Skill Score normal confidence interval lower limit" +CTS_ORSS_NCU "Odds Ratio Skill Score normal confidence interval upper limit" +CTS_ORSS_BCL "Odds Ratio Skill Score bootstrap confidence interval lower limit" +CTS_ORSS_BCU "Odds Ratio Skill Score bootstrap confidence interval upper limit" +CTS_EDS "Extreme Dependency Score" +CTS_EDS_NCL "Extreme Dependency Score normal confidence interval lower limit" +CTS_EDS_NCU "Extreme Dependency Score normal confidence interval upper limit" +CTS_EDS_BCL "Extreme Dependency Score bootstrap confidence interval lower limit" +CTS_EDS_BCU "Extreme Dependency Score bootstrap confidence interval upper limit" +CTS_SEDS "Symmetric Extreme Dependency Score" +CTS_SEDS_NCL "Symmetric Extreme Dependency Score normal confidence interval lower limit" +CTS_SEDS_NCU "Symmetric Extreme Dependency Score normal confidence interval upper limit" +CTS_SEDS_BCL "Symmetric Extreme Dependency Score bootstrap confidence interval lower limit" +CTS_SEDS_BCU "Symmetric Extreme Dependency Score bootstrap confidence interval upper limit" +CTS_EDI "Extreme Dependency Index" +CTS_EDI_NCL "Extreme Dependency Index normal confidence interval lower limit" +CTS_EDI_NCU "Extreme Dependency Index normal confidence interval upper limit" +CTS_EDI_BCL "Extreme Dependency Index bootstrap confidence interval lower limit" +CTS_EDI_BCU "Extreme Dependency Index bootstrap confidence interval upper limit" +CTS_SEDI "Symmetric Extreme Dependency Index" +CTS_SEDI_NCL "Symmetric Extreme Dependency Index normal confidence interval lower limit" +CTS_SEDI_NCU "Symmetric Extreme Dependency Index normal confidence interval upper limit" +CTS_SEDI_BCL "Symmetric Extreme Dependency Index bootstrap confidence interval lower limit" +CTS_SEDI_BCU "Symmetric Extreme Dependency Index bootstrap confidence interval upper limit" +CTS_BAGSS "Bias-Adjusted Gilbert Skill Score" +CTS_BAGSS_BCL "Bias-Adjusted Gilbert Skill Score bootstrap confidence interval lower limit" +CTS_BAGSS_BCU "Bias-Adjusted Gilbert Skill Score bootstrap confidence interval upper limit" +CTS_HSS_EC "Heidke skill score with expected correct" +CTS_HSS_EC_BCL "Heidke skill score with expected correct bootstrap confidence interval lower limit" +CTS_HSS_EC_BCU "Heidke skill score with expected correct bootstrap confidence interval upper limit" +CTS_EC_VALUE "Heidke skill score expected correct value" +MCTC_TOTAL "Total number of matched pairs" +MCTC_N_CAT "Number of categories in each dimension of the contingency table" +MCTC_FI_OJ "Count of events in forecast category i and observation category j" +MCTC_EC_VALUE "Heidke skill score expected correct value" +MCTS_TOTAL "Total number of matched pairs" +MCTS_N_CAT "Number of categories in each dimension of the contingency table" +MCTS_ACC "Accuracy" +MCTS_ACC_NCL "Accuracy normal confidence interval lower limit" +MCTS_ACC_NCU "Accuracy normal confidence interval upper limit" +MCTS_ACC_BCL "Accuracy bootstrap confidence interval lower limit" +MCTS_ACC_BCU "Accuracy bootstrap confidence interval upper limit" +MCTS_HK "Hanssen-Kuipers discriminant" +MCTS_HK_BCL "Hanssen-Kuipers discriminant bootstrap confidence interval lower limit" +MCTS_HK_BCU "Hanssen-Kuipers discriminant bootstrap confidence interval upper limit" +MCTS_HSS "Heidke skill score" +MCTS_HSS_BCL "Heidke skill score bootstrap confidence interval lower limit" +MCTS_HSS_BCU "Heidke skill score bootstrap confidence interval upper limit" +MCTS_GER "Gerrity skill score" +MCTS_GER_BCL "Gerrity skill score bootstrap confidence interval lower limit" +MCTS_GER_BCU "Gerrity skill score bootstrap confidence interval upper limit" +MCTS_HSS_EC "Heidke skill score with expected correct" +MCTS_HSS_EC_BCL "Heidke skill score with expected correct bootstrap confidence interval lower limit" +MCTS_HSS_EC_BCU "Heidke skill score with expected correct bootstrap confidence interval upper limit" +MCTS_EC_VALUE "Heidke skill score expected correct value" +CNT_TOTAL "Total number of matched pairs" +CNT_FBAR "Forecast mean" +CNT_FBAR_NCL "Forecast mean normal confidence interval lower limit" +CNT_FBAR_NCU "Forecast mean normal confidence interval upper limit" +CNT_FBAR_BCL "Forecast mean bootstrap confidence interval lower limit" +CNT_FBAR_BCU "Forecast mean bootstrap confidence interval upper limit" +CNT_FSTDEV "Forecast standard deviation" +CNT_FSTDEV_NCL "Forecast standard deviation normal confidence interval lower limit" +CNT_FSTDEV_NCU "Forecast standard deviation normal confidence interval upper limit" +CNT_FSTDEV_BCL "Forecast standard deviation bootstrap confidence interval lower limit" +CNT_FSTDEV_BCU "Forecast standard deviation bootstrap confidence interval upper limit" +CNT_OBAR "Observation mean" +CNT_OBAR_NCL "Observation mean normal confidence interval lower limit" +CNT_OBAR_NCU "Observation mean normal confidence interval upper limit" +CNT_OBAR_BCL "Observation mean bootstrap confidence interval lower limit" +CNT_OBAR_BCU "Observation mean bootstrap confidence interval upper limit" +CNT_OSTDEV "Observation standard deviation" +CNT_OSTDEV_NCL "Observation standard deviation normal confidence interval lower limit" +CNT_OSTDEV_NCU "Observation standard deviation normal confidence interval upper limit" +CNT_OSTDEV_BCL "Observation standard deviation bootstrap confidence interval lower limit" +CNT_OSTDEV_BCU "Observation standard deviation bootstrap confidence interval upper limit" +CNT_PR_CORR "Pearson correlation coefficient" +CNT_PR_CORR_NCL "Pearson correlation coefficient normal confidence interval lower limit" +CNT_PR_CORR_NCU "Pearson correlation coefficient normal confidence interval upper limit" +CNT_PR_CORR_BCL "Pearson correlation coefficient bootstrap confidence interval lower limit" +CNT_PR_CORR_BCU "Pearson correlation coefficient bootstrap confidence interval upper limit" +CNT_SP_CORR "Spearman's rank correlation coefficient" +CNT_KT_CORR "Kendall's tau statistic" +CNT_RANKS "Number of ranks used in computing Kendall"s tau statistic" +CNT_FRANK_TIES "Number of tied forecast ranks used in computing Kendall"s tau statistic" +CNT_ORANK_TIES "Number of tied observation ranks used in computing Kendall"s tau statistic" +CNT_ME "Mean error" +CNT_ME_NCL "Mean error normal confidence interval lower limit" +CNT_ME_NCU "Mean error normal confidence interval upper limit" +CNT_ME_BCL "Mean error bootstrap confidence interval lower limit" +CNT_ME_BCU "Mean error bootstrap confidence interval upper limit" +CNT_ESTDEV "Standard deviation of the error" +CNT_ESTDEV_NCL "Standard deviation of the error normal confidence interval lower limit" +CNT_ESTDEV_NCU "Standard deviation of the error normal confidence interval upper limit" +CNT_ESTDEV_BCL "Standard deviation of the error bootstrap confidence interval lower limit" +CNT_ESTDEV_BCU "Standard deviation of the error bootstrap confidence interval upper limit" +CNT_MBIAS "Multiplicative bias" +CNT_MBIAS_BCL "Multiplicative bias bootstrap confidence interval lower limit" +CNT_MBIAS_BCU "Multiplicative bias bootstrap confidence interval upper limit" +CNT_MAE "Mean absolute error" +CNT_MAE_BCL "Mean absolute error bootstrap confidence interval lower limit" +CNT_MAE_BCU "Mean absolute error bootstrap confidence interval upper limit" +CNT_MSE "Mean squared error" +CNT_MSE_BCL "Mean squared error bootstrap confidence interval lower limit" +CNT_MSE_BCU "Mean squared error bootstrap confidence interval upper limit" +CNT_BCMSE "Bias-corrected mean squared error" +CNT_BCMSE_BCL "Bias-corrected mean squared error bootstrap confidence interval lower limit" +CNT_BCMSE_BCU "Bias-corrected mean squared error bootstrap confidence interval upper limit" +CNT_RMSE "Root mean squared error" +CNT_RMSE_BCL "Root mean squared error bootstrap confidence interval lower limit" +CNT_RMSE_BCU "Root mean squared error bootstrap confidence interval upper limit" +CNT_E10 "10th percentile of the error" +CNT_E10_BCL "10th percentile of the error bootstrap confidence interval lower limit" +CNT_E10_BCU "10th percentile of the error bootstrap confidence interval upper limit" +CNT_E25 "25th percentile of the error" +CNT_E25_BCL "25th percentile of the error bootstrap confidence interval lower limit" +CNT_E25_BCU "25th percentile of the error bootstrap confidence interval upper limit" +CNT_E50 "50th percentile of the error" +CNT_E50_BCL "50th percentile of the error bootstrap confidence interval lower limit" +CNT_E50_BCU "50th percentile of the error bootstrap confidence interval upper limit" +CNT_E75 "75th percentile of the error" +CNT_E75_BCL "75th percentile of the error bootstrap confidence interval lower limit" +CNT_E75_BCU "75th percentile of the error bootstrap confidence interval upper limit" +CNT_E90 "90th percentile of the error" +CNT_E90_BCL "90th percentile of the error bootstrap confidence interval lower limit" +CNT_E90_BCU "90th percentile of the error bootstrap confidence interval upper limit" +CNT_EIQR "Interquartile Range of the error" +CNT_EIQR_BCL "Interquartile Range of the error bootstrap confidence interval lower limit" +CNT_EIQR_BCU "Interquartile Range of the error bootstrap confidence interval upper limit" +CNT_MAD "Median Absolute Deviation" +CNT_MAD_BCL "Median Absolute Deviation bootstrap confidence interval lower limit" +CNT_MAD_BCU "Median Absolute Deviation bootstrap confidence interval upper limit" +CNT_ANOM_CORR "Anomaly Correlation including mean error" +CNT_ANOM_CORR_NCL "Anomaly Correlation including mean error normal confidence interval lower limit" +CNT_ANOM_CORR_NCU "Anomaly Correlation including mean error normal confidence interval upper limit" +CNT_ANOM_CORR_BCL "Anomaly Correlation including mean error bootstrap confidence interval lower limit" +CNT_ANOM_CORR_BCU "Anomaly Correlation including mean error bootstrap confidence interval upper limit" +CNT_ME2 "Square of the mean error (bias)" +CNT_ME2_BCL "Square of the mean error (bias) bootstrap confidence interval lower limit" +CNT_ME2_BCU "Square of the mean error (bias) bootstrap confidence interval upper limit" +CNT_MSESS "Mean squared error skill score" +CNT_MSESS_BCL "Mean squared error skill score bootstrap confidence interval lower limit" +CNT_MSESS_BCU "Mean squared error skill score bootstrap confidence interval upper limit" +CNT_RMSFA "Root mean squared forecast anomaly (f-c)" +CNT_RMSFA_BCL "Root mean squared forecast anomaly (f-c) bootstrap confidence interval lower limit" +CNT_RMSFA_BCU "Root mean squared forecast anomaly (f-c) bootstrap confidence interval upper limit" +CNT_RMSOA "Root mean squared observation anomaly (o-c)" +CNT_RMSOA_BCL "Root mean squared observation anomaly (o-c) bootstrap confidence interval lower limit" +CNT_RMSOA_BCU "Root mean squared observation anomaly (o-c) bootstrap confidence interval upper limit" +CNT_ANOM_CORR_UNCNTR "Uncentered Anomaly Correlation excluding mean error" +CNT_ANOM_CORR_UNCNTR_BCL "Uncentered Anomaly Correlation excluding mean error" +CNT_ANOM_CORR_UNCNTR_BCU "Uncentered Anomaly Correlation excluding mean error" +CNT_SI "Scatter Index" +CNT_SI_BCL "Scatter Index bootstrap confidence interval lower limit" +CNT_SI_BCU "Scatter Index bootstrap confidence interval upper limit" +SL1L2_TOTAL "Total number of matched pairs" +SL1L2_FBAR "Mean of the forecast: mean(f)" +SL1L2_OBAR "Mean of the observation: mean(o)" +SL1L2_FOBAR "Mean of the product of the forecast and observation: mean(f*o)" +SL1L2_FFBAR "Mean of the forecast squared: mean(f*f)" +SL1L2_OOBAR "Mean of the observation squared: mean(o*o)" +SL1L2_MAE "Mean absolute error" +PCT_TOTAL "Total number of matched pairs" +PCT_N_THRESH "Number of probability thresholds" +PCT_THRESH_I "The i-th probability threshold" +PCT_OY_I "Number of observation yes when forecast is between the i-th and (i+1)-th probability thresholds" +PCT_ON_I "Number of observation no when forecast is between the i-th and (i+1)-th probability thresholds" +PSTD_TOTAL "Total number of matched pairs" +PSTD_N_THRESH "Number of probability thresholds" +PSTD_BASER "Base rate" +PSTD_BASER_NCL "Base rate normal confidence interval lower limit" +PSTD_BASER_NCU "Base rate normal confidence interval upper limit" +PSTD_RELIABILITY "Reliability" +PSTD_RESOLUTION "Resolution" +PSTD_UNCERTAINTY "Uncertainty" +PSTD_ROC_AUC "Area under the receiver operating characteristic curve" +PSTD_BRIER "Brier score" +PSTD_BRIER_NCL "Brier score normal confidence interval lower limit" +PSTD_BRIER_NCU "Brier score normal confidence interval upper limit" +PSTD_BRIERCL "Climatological Brier Score" +PSTD_BRIERCL_NCL "Climatological Brier Score normal confidence interval lower limit" +PSTD_BRIERCL_NCU "Climatological Brier Score normal confidence interval upper limit" +PSTD_BSS "Brier Skill Score relative to external climatology" +PSTD_BSS_SMPL "Brier Skill Score relative to sample climatology" +PJC_TOTAL "Total number of matched pairs" +PJC_N_THRESH "Number of probability thresholds" +PJC_THRESH_I "The i-th probability threshold" +PJC_OY_TP_I "Number of observation yes when forecast is between the i-th and (i+1)-th probability thresholds as a proportion of the total OY" +PJC_ON_TP_I "Number of observation no when forecast is between the i-th and (i+1)-th probability thresholds as a proportion of the total ON" +PJC_CALIBRATION_I "Calibration when forecast is between the i-th and (i+1)-th probability thresholds" +PJC_REFINEMENT_I "Refinement when forecast is between the i-th and (i+1)-th probability thresholds" +PJC_LIKELIHOOD_I "Likelihodd when forecast is between the i-th and (i+1)-th probability thresholds" +PJC_BASER_I "Base rate when forecast is between the i-th and (i+1)-th probability thresholds" +PRC_TOTAL "Total number of matched pairs" +PRC_N_THRESH "Number of probability thresholds" +PRC_THRESH_I "The i-th probability threshold" +PRC_PODY_I "Probability of detecting yes when forecast is between the i-th and (i+1)-th probability thresholds" +PRC_POFD_I "Probability of false detection when forecast is between the i-th and (i+1)-th probability thresholds" diff --git a/docs/Users_Guide/appendixC.rst b/docs/Users_Guide/appendixC.rst index c912032647..0daab13dd0 100644 --- a/docs/Users_Guide/appendixC.rst +++ b/docs/Users_Guide/appendixC.rst @@ -273,7 +273,7 @@ HSS can range from minus infinity to 1. A perfect forecast would have HSS = 1. Heidke Skill Score - Expected Correct (HSS_EC) ---------------------------------------------- -Called "HSS_EC" in MCTS output :numref:`table_PS_format_info_MCTS` +Called "HSS_EC" in CTS output :numref:`table_PS_format_info_CTS` and MCTS output :numref:`table_PS_format_info_MCTS` HSS_EC is a skill score based on Accuracy, where the Accuracy is corrected by the number of correct forecasts that would be expected by chance. In particular, @@ -360,8 +360,8 @@ where :math:`H = \frac{n_{11}}{n_{11} + n_{01}}` and :math:`F = \frac{n_{10}}{n_ SEDI can range from :math:`-\infty` to 1, with 0 representing no skill. A perfect forecast would have a value of SEDI = 1. SEDI approaches 1 only as the forecast approaches perfection (:ref:`Ferro and Stephenson, 2011 `). -Bias Adjusted Gilbert Skill Score (GSS) ---------------------------------------- +Bias-Adjusted Gilbert Skill Score (BAGSS) +----------------------------------------- Called "BAGSS" in CTS output :numref:`table_PS_format_info_CTS` diff --git a/docs/Users_Guide/config_options.rst b/docs/Users_Guide/config_options.rst index ceb19d6b4c..9a2aab720d 100644 --- a/docs/Users_Guide/config_options.rst +++ b/docs/Users_Guide/config_options.rst @@ -1996,13 +1996,14 @@ hss_ec_value ^^^^^^^^^^^^ The "hss_ec_value" entry is a floating point number used in the computation -of the HSS_EC statistic in the MCTS line type. It specifies the expected +of the HSS_EC statistic in the CTS and MCTS line types. It specifies the expected correct (EC) rate by chance for multi-category contingency tables. If set to its default value of NA, it will automatically be replaced with 1.0 -divided by the MCTC table dimension. For example, for a 4x4 table, the +divided by the CTC or MCTC table dimension. For example, for a 2x2 CTC table, +the default hss_ec_value is 1.0 / 2 = 0.5. For a 4x4 MCTC table, the default hss_ec_value is 1.0 / 4 = 0.25. -It set, it must greater than or equal to 0.0 and less than 1.0. A value of +If set, it must greater than or equal to 0.0 and less than 1.0. A value of 0.0 produces an HSS_EC statistic equal to the Accuracy statistic. .. code-block:: none diff --git a/docs/Users_Guide/grid-stat.rst b/docs/Users_Guide/grid-stat.rst index 2e0716f505..8cf51c09f8 100644 --- a/docs/Users_Guide/grid-stat.rst +++ b/docs/Users_Guide/grid-stat.rst @@ -681,7 +681,7 @@ The format of the STAT and ASCII output of the Grid-Stat tool are the same as th - Symmetric Extremal Dependency Index including normal and bootstrap upper and lower confidence limits * - 115-117 - BAGSS, :raw-html:`
` BAGSS_BCL, :raw-html:`
` BAGSS_BCU - - Bias Adjusted Gilbert Skill Score including bootstrap upper and lower confidence limits + - Bias-Adjusted Gilbert Skill Score including bootstrap upper and lower confidence limits .. role:: raw-html(raw) diff --git a/docs/Users_Guide/point-stat.rst b/docs/Users_Guide/point-stat.rst index 8ee096b946..465681cd4b 100644 --- a/docs/Users_Guide/point-stat.rst +++ b/docs/Users_Guide/point-stat.rst @@ -641,6 +641,9 @@ The first set of header columns are common to all of the output files generated * - 29 - FN_ON - Number of forecast no and observation no + * - 30 + - EC_VALUE + - Expected correct rate, used for CTS HSS_EC .. role:: raw-html(raw) :format: html @@ -738,7 +741,13 @@ The first set of header columns are common to all of the output files generated - Symmetric Extremal Dependency Index including normal and bootstrap upper and lower confidence limits * - 115-117 - BAGSS, :raw-html:`
` BAGSS_BCL, :raw-html:`
` BAGSS_BCU - - Bias Adjusted Gilbert Skill Score including bootstrap upper and lower confidence limits + - Bias-Adjusted Gilbert Skill Score including bootstrap upper and lower confidence limits + * - 118-120 + - HSS_EC, :raw-html:`
` HSS_EC_BCL, :raw-html:`
` HSS_EC_BCU + - Heidke Skill Score with user-specific expected correct and bootstrap confidence limits + * - 121 + - EC_VALUE + - Expected correct rate, used for CTS HSS_EC .. role:: raw-html(raw) @@ -834,8 +843,8 @@ The first set of header columns are common to all of the output files generated - E10, :raw-html:`
` E10_BCL, :raw-html:`
` E10_BCU, :raw-html:`
` E25, :raw-html:`
` E25_BCL, :raw-html:`
` E25_BCU, :raw-html:`
` E50, :raw-html:`
` E50_BCL, :raw-html:`
` E50_BCU, :raw-html:`
` E75, :raw-html:`
` E75_BCL, :raw-html:`
` E75_BCU, :raw-html:`
` E90, :raw-html:`
` E90_BCL, :raw-html:`
` E90_BCU - 10th, 25th, 50th, 75th, and 90th percentiles of the error including bootstrap upper and lower confidence limits * - 96-98 - - IQR, :raw-html:`
` IQR _BCL, :raw-html:`
` IQR _BCU - - The Interquartile Range including bootstrap upper and lower confidence limits + - EIQR, :raw-html:`
` IQR _BCL, :raw-html:`
` IQR _BCU + - The Interquartile Range of the error including bootstrap upper and lower confidence limits * - 99-101 - MAD, :raw-html:`
` MAD_BCL, :raw-html:`
` MAD_BCU - The Median Absolute Deviation including bootstrap upper and lower confidence limits diff --git a/docs/Users_Guide/tc-gen.rst b/docs/Users_Guide/tc-gen.rst index d69036a603..5cc22a7351 100644 --- a/docs/Users_Guide/tc-gen.rst +++ b/docs/Users_Guide/tc-gen.rst @@ -18,7 +18,7 @@ The TC-Gen tool processes both deterministic and probabilistic forecasts. For deterministic forecasts specified using the **-track** command line option, it identifies genesis events in both the forecasts and reference datasets, typically Best tracks. It applies user-specified configuration options to pair up the forecast and reference genesis events and categorize each pair as a hit, miss, or false alarm. -As with other extreme events (where the event occurs much less frequently than the non-event), the correct negative category is not computed since the non-events would dominate the contingency table. Therefore, only statistics that do not include correct negatives should be considered for this tool. The following CTS statistics are relevant: Base rate (BASER), Mean forecast (FMEAN), Frequency Bias (FBIAS), Probability of Detection (PODY), False Alarm Ratio (FAR), Critical Success Index (CSI), Gilbert Skill Score (GSS), Extreme Dependency Score (EDS), Symmetric Extreme Dependency Score (SEDS), Bias Adjusted Gilbert Skill Score (BAGSS). +As with other extreme events (where the event occurs much less frequently than the non-event), the correct negative category is not computed since the non-events would dominate the contingency table. Therefore, only statistics that do not include correct negatives should be considered for this tool. The following CTS statistics are relevant: Base rate (BASER), Mean forecast (FMEAN), Frequency Bias (FBIAS), Probability of Detection (PODY), False Alarm Ratio (FAR), Critical Success Index (CSI), Gilbert Skill Score (GSS), Extreme Dependency Score (EDS), Symmetric Extreme Dependency Score (SEDS), Bias-Adjusted Gilbert Skill Score (BAGSS). For probabilistic forecasts specified using the **-edeck** command line option, it identifies genesis events in the reference dataset. It applies user-specified configuration options to pair the forecast probabilities to the reference genesis events. These pairs are added to an Nx2 probabilistic contingency table. If the reference genesis event occurs within in the predicted time window, the pair is counted in the observation-yes column. Otherwise, it is added to the observation-no column. diff --git a/internal/test_unit/hdr/met_11_0.hdr b/internal/test_unit/hdr/met_11_0.hdr index 84f5b5a950..085933cb83 100644 --- a/internal/test_unit/hdr/met_11_0.hdr +++ b/internal/test_unit/hdr/met_11_0.hdr @@ -1,6 +1,6 @@ CNT : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FBAR FBAR_NCL FBAR_NCU FBAR_BCL FBAR_BCU FSTDEV FSTDEV_NCL FSTDEV_NCU FSTDEV_BCL FSTDEV_BCU OBAR OBAR_NCL OBAR_NCU OBAR_BCL OBAR_BCU OSTDEV OSTDEV_NCL OSTDEV_NCU OSTDEV_BCL OSTDEV_BCU PR_CORR PR_CORR_NCL PR_CORR_NCU PR_CORR_BCL PR_CORR_BCU SP_CORR KT_CORR RANKS FRANK_TIES ORANK_TIES ME ME_NCL ME_NCU ME_BCL ME_BCU ESTDEV ESTDEV_NCL ESTDEV_NCU ESTDEV_BCL ESTDEV_BCU MBIAS MBIAS_BCL MBIAS_BCU MAE MAE_BCL MAE_BCU MSE MSE_BCL MSE_BCU BCMSE BCMSE_BCL BCMSE_BCU RMSE RMSE_BCL RMSE_BCU E10 E10_BCL E10_BCU E25 E25_BCL E25_BCU E50 E50_BCL E50_BCU E75 E75_BCL E75_BCU E90 E90_BCL E90_BCU EIQR EIQR_BCL EIQR_BCU MAD MAD_BCL MAD_BCU ANOM_CORR ANOM_CORR_NCL ANOM_CORR_NCU ANOM_CORR_BCL ANOM_CORR_BCU ME2 ME2_BCL ME2_BCU MSESS MSESS_BCL MSESS_BCU RMSFA RMSFA_BCL RMSFA_BCU RMSOA RMSOA_BCL RMSOA_BCU ANOM_CORR_UNCNTR ANOM_CORR_UNCNTR_BCL ANOM_CORR_UNCNTR_BCU SI SI_BCL SI_BCU -CTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FY_OY FY_ON FN_OY FN_ON -CTS : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL BASER BASER_NCL BASER_NCU BASER_BCL BASER_BCU FMEAN FMEAN_NCL FMEAN_NCU FMEAN_BCL FMEAN_BCU ACC ACC_NCL ACC_NCU ACC_BCL ACC_BCU FBIAS FBIAS_BCL FBIAS_BCU PODY PODY_NCL PODY_NCU PODY_BCL PODY_BCU PODN PODN_NCL PODN_NCU PODN_BCL PODN_BCU POFD POFD_NCL POFD_NCU POFD_BCL POFD_BCU FAR FAR_NCL FAR_NCU FAR_BCL FAR_BCU CSI CSI_NCL CSI_NCU CSI_BCL CSI_BCU GSS GSS_BCL GSS_BCU HK HK_NCL HK_NCU HK_BCL HK_BCU HSS HSS_BCL HSS_BCU ODDS ODDS_NCL ODDS_NCU ODDS_BCL ODDS_BCU LODDS LODDS_NCL LODDS_NCU LODDS_BCL LODDS_BCU ORSS ORSS_NCL ORSS_NCU ORSS_BCL ORSS_BCU EDS EDS_NCL EDS_NCU EDS_BCL EDS_BCU SEDS SEDS_NCL SEDS_NCU SEDS_BCL SEDS_BCU EDI EDI_NCL EDI_NCU EDI_BCL EDI_BCU SEDI SEDI_NCL SEDI_NCU SEDI_BCL SEDI_BCU BAGSS BAGSS_BCL BAGSS_BCU +CTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL FY_OY FY_ON FN_OY FN_ON EC_VALUE +CTS : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL BASER BASER_NCL BASER_NCU BASER_BCL BASER_BCU FMEAN FMEAN_NCL FMEAN_NCU FMEAN_BCL FMEAN_BCU ACC ACC_NCL ACC_NCU ACC_BCL ACC_BCU FBIAS FBIAS_BCL FBIAS_BCU PODY PODY_NCL PODY_NCU PODY_BCL PODY_BCU PODN PODN_NCL PODN_NCU PODN_BCL PODN_BCU POFD POFD_NCL POFD_NCU POFD_BCL POFD_BCU FAR FAR_NCL FAR_NCU FAR_BCL FAR_BCU CSI CSI_NCL CSI_NCU CSI_BCL CSI_BCU GSS GSS_BCL GSS_BCU HK HK_NCL HK_NCU HK_BCL HK_BCU HSS HSS_BCL HSS_BCU ODDS ODDS_NCL ODDS_NCU ODDS_BCL ODDS_BCU LODDS LODDS_NCL LODDS_NCU LODDS_BCL LODDS_BCU ORSS ORSS_NCL ORSS_NCU ORSS_BCL ORSS_BCU EDS EDS_NCL EDS_NCU EDS_BCL EDS_BCU SEDS SEDS_NCL SEDS_NCU SEDS_BCL SEDS_BCU EDI EDI_NCL EDI_NCU EDI_BCL EDI_BCU SEDI SEDI_NCL SEDI_NCU SEDI_BCL SEDI_BCU BAGSS BAGSS_BCL BAGSS_BCU HSS_EC HSS_EC_BCL HSS_EC_BCU EC_VALUE FHO : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL F_RATE H_RATE O_RATE ISC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL TILE_DIM TILE_XLL TILE_YLL NSCALE ISCALE MSE ISC FENERGY2 OENERGY2 BASER FBIAS MCTC : VERSION MODEL DESC FCST_LEAD FCST_VALID_BEG FCST_VALID_END OBS_LEAD OBS_VALID_BEG OBS_VALID_END FCST_VAR FCST_UNITS FCST_LEV OBS_VAR OBS_UNITS OBS_LEV OBTYPE VX_MASK INTERP_MTHD INTERP_PNTS FCST_THRESH OBS_THRESH COV_THRESH ALPHA LINE_TYPE TOTAL N_CAT _VAR_ diff --git a/src/basic/vx_util/stat_column_defs.h b/src/basic/vx_util/stat_column_defs.h index 130f41bcb1..76434c30db 100644 --- a/src/basic/vx_util/stat_column_defs.h +++ b/src/basic/vx_util/stat_column_defs.h @@ -36,7 +36,7 @@ static const char * fho_columns [] = { static const char * ctc_columns [] = { "TOTAL", "FY_OY", "FY_ON", - "FN_OY", "FN_ON" + "FN_OY", "FN_ON", "EC_VALUE" }; static const char * cts_columns [] = { @@ -60,7 +60,8 @@ static const char * cts_columns [] = { "SEDS", "SEDS_NCL", "SEDS_NCU", "SEDS_BCL", "SEDS_BCU", "EDI", "EDI_NCL", "EDI_NCU", "EDI_BCL", "EDI_BCU", "SEDI", "SEDI_NCL", "SEDI_NCU", "SEDI_BCL", "SEDI_BCU", - "BAGSS", "BAGSS_BCL", "BAGSS_BCU" + "BAGSS", "BAGSS_BCL", "BAGSS_BCU", + "HSS_EC", "HSS_EC_BCL", "HSS_EC_BCU", "EC_VALUE" }; static const char * mctc_columns [] = { diff --git a/src/libcode/vx_analysis_util/stat_job.h b/src/libcode/vx_analysis_util/stat_job.h index a1b90849ff..50cf4a91af 100644 --- a/src/libcode/vx_analysis_util/stat_job.h +++ b/src/libcode/vx_analysis_util/stat_job.h @@ -335,7 +335,7 @@ class STATAnalysisJob { double ss_index_vld_thresh; // - // MCTS HSS Expected Correct rate + // HSS Expected Correct rate // double hss_ec_value; diff --git a/src/libcode/vx_stat_out/stat_columns.cc b/src/libcode/vx_stat_out/stat_columns.cc index c09d6aab51..730f0e8a93 100644 --- a/src/libcode/vx_stat_out/stat_columns.cc +++ b/src/libcode/vx_stat_out/stat_columns.cc @@ -1975,7 +1975,7 @@ void write_ctc_cols(const CTSInfo &cts_info, // Contingency Table Counts // Dump out the CTC line: // TOTAL, FY_OY, FY_ON, - // FN_OY, FN_ON + // FN_OY, FN_ON, EC_VALUE // at.set_entry(r, c+0, // Total Count cts_info.cts.n()); @@ -1992,6 +1992,9 @@ void write_ctc_cols(const CTSInfo &cts_info, at.set_entry(r, c+4, // FN_ON cts_info.cts.fn_on()); + at.set_entry(r, c+5, // Expected Correct value + cts_info.cts.ec_value()); + return; } @@ -2023,7 +2026,9 @@ void write_cts_cols(const CTSInfo &cts_info, int i, // SEDS, SEDS_NCL, SEDS_NCU, SEDS_BCL, SEDS_BCU, // EDI, EDI_NCL, EDI_NCU, EDI_BCL, EDI_BCU, // SEDI, SEDI_NCL, SEDI_NCU, SEDI_BCL, SEDI_BCU, - // BAGSS, BAGSS_BCL, BAGSS_BCU + // BAGSS, BAGSS_BCL, BAGSS_BCU, + // HSS_EC, HSS_EC_BCL, HSS_EC_BCU, + // EC_VALUE // at.set_entry(r, c+0, // Total count cts_info.cts.n()); @@ -2304,6 +2309,18 @@ void write_cts_cols(const CTSInfo &cts_info, int i, at.set_entry(r, c+92, // Bias-Corrected Gilbert Skill Score BCU cts_info.bagss.v_bcu[i]); + at.set_entry(r, c+93, // Heidke Skill Score with Expected Correct + cts_info.hss_ec.v); + + at.set_entry(r, c+94, // Heidke Skill Score EC BCL + cts_info.hss_ec.v_bcl[i]); + + at.set_entry(r, c+95, // Heidke Skill Score EC BCU + cts_info.hss_ec.v_bcu[i]); + + at.set_entry(r, c+96, // Expected Correct value + cts_info.cts.ec_value()); + return; } diff --git a/src/libcode/vx_statistics/compute_ci.cc b/src/libcode/vx_statistics/compute_ci.cc index ad15d82ec4..ae10ab8931 100644 --- a/src/libcode/vx_statistics/compute_ci.cc +++ b/src/libcode/vx_statistics/compute_ci.cc @@ -337,6 +337,7 @@ void compute_cts_stats_ci_bca(const gsl_rng *rng_ptr, for(i=0; i 0 ) { - - ECvalue = 1.0 / N; - -} - return; } @@ -514,6 +504,16 @@ E->resize(n, 0); Nrows = NR; Ncols = NC; + // + // if square, set default expected correct value + // + +if ( Nrows == Ncols ) { + + ECvalue = 1.0 / Nrows; + +} + // // done // diff --git a/src/libcode/vx_statistics/met_stats.cc b/src/libcode/vx_statistics/met_stats.cc index a5eae44574..9f5f83fcea 100644 --- a/src/libcode/vx_statistics/met_stats.cc +++ b/src/libcode/vx_statistics/met_stats.cc @@ -232,6 +232,7 @@ void CTSInfo::clear() { bagss.clear(); hk.clear(); hss.clear(); + hss_ec.clear(); odds.clear(); lodds.clear(); orss.clear(); @@ -270,6 +271,7 @@ void CTSInfo::assign(const CTSInfo &c) { bagss = c.bagss; hk = c.hk; hss = c.hss; + hss_ec = c.hss_ec; odds = c.odds; lodds = c.lodds; orss = c.orss; @@ -310,6 +312,7 @@ void CTSInfo::allocate_n_alpha(int i) { bagss.allocate_n_alpha(n_alpha); hk.allocate_n_alpha(n_alpha); hss.allocate_n_alpha(n_alpha); + hss_ec.allocate_n_alpha(n_alpha); odds.allocate_n_alpha(n_alpha); lodds.allocate_n_alpha(n_alpha); orss.allocate_n_alpha(n_alpha); @@ -345,26 +348,27 @@ void CTSInfo::add(double f, double o, double cmn, double csd) { void CTSInfo::compute_stats() { - baser.v = cts.oy_tp(); - fmean.v = cts.fy_tp(); - acc.v = cts.accuracy(); - fbias.v = cts.fbias(); - pody.v = cts.pod_yes(); - podn.v = cts.pod_no(); - pofd.v = cts.pofd(); - far.v = cts.far(); - csi.v = cts.csi(); - gss.v = cts.gss(); - bagss.v = cts.bagss(); - hk.v = cts.hk(); - hss.v = cts.hss(); - odds.v = cts.odds(); - lodds.v = cts.lodds(); - orss.v = cts.orss(); - eds.v = cts.eds(); - seds.v = cts.seds(); - edi.v = cts.edi(); - sedi.v = cts.sedi(); + baser.v = cts.oy_tp(); + fmean.v = cts.fy_tp(); + acc.v = cts.accuracy(); + fbias.v = cts.fbias(); + pody.v = cts.pod_yes(); + podn.v = cts.pod_no(); + pofd.v = cts.pofd(); + far.v = cts.far(); + csi.v = cts.csi(); + gss.v = cts.gss(); + bagss.v = cts.bagss(); + hk.v = cts.hk(); + hss.v = cts.hss(); + hss_ec.v = cts.gheidke_ec(cts.ec_value()); + odds.v = cts.odds(); + lodds.v = cts.lodds(); + orss.v = cts.orss(); + eds.v = cts.eds(); + seds.v = cts.seds(); + edi.v = cts.edi(); + sedi.v = cts.sedi(); return; } @@ -432,27 +436,28 @@ double CTSInfo::get_stat(const char *stat_name) { double v = bad_data_double; // Find the statistic by name - if(strcmp(stat_name, "TOTAL") == 0) v = cts.n(); - else if(strcmp(stat_name, "BASER") == 0) v = cts.baser(); - else if(strcmp(stat_name, "FMEAN") == 0) v = cts.fmean(); - else if(strcmp(stat_name, "ACC" ) == 0) v = cts.accuracy(); - else if(strcmp(stat_name, "FBIAS") == 0) v = cts.fbias(); - else if(strcmp(stat_name, "PODY" ) == 0) v = cts.pod_yes(); - else if(strcmp(stat_name, "PODN" ) == 0) v = cts.pod_no(); - else if(strcmp(stat_name, "POFD" ) == 0) v = cts.pofd(); - else if(strcmp(stat_name, "FAR" ) == 0) v = cts.far(); - else if(strcmp(stat_name, "CSI" ) == 0) v = cts.csi(); - else if(strcmp(stat_name, "GSS" ) == 0) v = cts.gss(); - else if(strcmp(stat_name, "HK" ) == 0) v = cts.hk(); - else if(strcmp(stat_name, "HSS" ) == 0) v = cts.hss(); - else if(strcmp(stat_name, "ODDS" ) == 0) v = cts.odds(); - else if(strcmp(stat_name, "LODDS") == 0) v = cts.lodds(); - else if(strcmp(stat_name, "ORSS" ) == 0) v = cts.orss(); - else if(strcmp(stat_name, "EDS" ) == 0) v = cts.eds(); - else if(strcmp(stat_name, "SEDS" ) == 0) v = cts.seds(); - else if(strcmp(stat_name, "EDI" ) == 0) v = cts.edi(); - else if(strcmp(stat_name, "SEDI" ) == 0) v = cts.sedi(); - else if(strcmp(stat_name, "BAGSS") == 0) v = cts.bagss(); + if(strcmp(stat_name, "TOTAL" ) == 0) v = cts.n(); + else if(strcmp(stat_name, "BASER" ) == 0) v = cts.baser(); + else if(strcmp(stat_name, "FMEAN" ) == 0) v = cts.fmean(); + else if(strcmp(stat_name, "ACC" ) == 0) v = cts.accuracy(); + else if(strcmp(stat_name, "FBIAS" ) == 0) v = cts.fbias(); + else if(strcmp(stat_name, "PODY" ) == 0) v = cts.pod_yes(); + else if(strcmp(stat_name, "PODN" ) == 0) v = cts.pod_no(); + else if(strcmp(stat_name, "POFD" ) == 0) v = cts.pofd(); + else if(strcmp(stat_name, "FAR" ) == 0) v = cts.far(); + else if(strcmp(stat_name, "CSI" ) == 0) v = cts.csi(); + else if(strcmp(stat_name, "GSS" ) == 0) v = cts.gss(); + else if(strcmp(stat_name, "HK" ) == 0) v = cts.hk(); + else if(strcmp(stat_name, "HSS" ) == 0) v = cts.hss(); + else if(strcmp(stat_name, "HSS_EC") == 0) v = cts.gheidke_ec(cts.ec_value()); + else if(strcmp(stat_name, "ODDS" ) == 0) v = cts.odds(); + else if(strcmp(stat_name, "LODDS" ) == 0) v = cts.lodds(); + else if(strcmp(stat_name, "ORSS" ) == 0) v = cts.orss(); + else if(strcmp(stat_name, "EDS" ) == 0) v = cts.eds(); + else if(strcmp(stat_name, "SEDS" ) == 0) v = cts.seds(); + else if(strcmp(stat_name, "EDI" ) == 0) v = cts.edi(); + else if(strcmp(stat_name, "SEDI" ) == 0) v = cts.sedi(); + else if(strcmp(stat_name, "BAGSS" ) == 0) v = cts.bagss(); else { mlog << Error << "\nCTSInfo::get_stat() -> " << "unknown categorical statistic name \"" << stat_name diff --git a/src/libcode/vx_statistics/met_stats.h b/src/libcode/vx_statistics/met_stats.h index 77a245c6f4..3f58e960a1 100644 --- a/src/libcode/vx_statistics/met_stats.h +++ b/src/libcode/vx_statistics/met_stats.h @@ -88,7 +88,7 @@ class CTSInfo { CIInfo baser, fmean, acc, fbias; CIInfo pody, podn, pofd; - CIInfo far, csi, gss, bagss, hk, hss, odds; + CIInfo far, csi, gss, bagss, hk, hss, hss_ec, odds; CIInfo lodds, orss, eds, seds, edi, sedi; void clear(); diff --git a/src/tools/core/grid_stat/grid_stat.cc b/src/tools/core/grid_stat/grid_stat.cc index fbbdfbc773..1145ab165a 100644 --- a/src/tools/core/grid_stat/grid_stat.cc +++ b/src/tools/core/grid_stat/grid_stat.cc @@ -1877,6 +1877,7 @@ void do_cts(CTSInfo *&cts_info, int i_vx, // n_cts = conf_info.vx_opt[i_vx].fcat_ta.n(); for(i=0; i " << "unsupported column name requested \"" << c @@ -1270,99 +1273,103 @@ void store_stat_cts(int n, const ConcatString &col, for(i=0; i " << "unsupported column name requested \"" << c @@ -1665,6 +1672,9 @@ void store_stat_cnt(int n, const ConcatString &col, else if(c == "ANOM_CORR_UNCNTR") { v = cnt_info.anom_corr_uncntr.v; } else if(c == "ANOM_CORR_UNCNTR_BCL") { v = cnt_info.anom_corr_uncntr.v_bcl[i]; } else if(c == "ANOM_CORR_UNCNTR_BCU") { v = cnt_info.anom_corr_uncntr.v_bcu[i]; } + else if(c == "SI") { v = cnt_info.si.v; } + else if(c == "SI_BCL") { v = cnt_info.si.v_bcl[i]; } + else if(c == "SI_BCU") { v = cnt_info.si.v_bcu[i]; } else { mlog << Error << "\nstore_stat_cnt() -> " << "unsupported column name requested \"" << c @@ -1730,6 +1740,7 @@ void store_stat_sl1l2(int n, const ConcatString &col, else if(c == "FOABAR") { v = s_info.foabar; } else if(c == "FFABAR") { v = s_info.ffabar; } else if(c == "OOABAR") { v = s_info.ooabar; } + else if(c == "MAE") { v = s_info.mae; } else { mlog << Error << "\nstore_stat_sl1l2() -> " << "unsupported column name requested \"" << c diff --git a/src/tools/core/series_analysis/series_analysis_conf_info.h b/src/tools/core/series_analysis/series_analysis_conf_info.h index 92f9cabd75..47f503af9c 100644 --- a/src/tools/core/series_analysis/series_analysis_conf_info.h +++ b/src/tools/core/series_analysis/series_analysis_conf_info.h @@ -74,7 +74,7 @@ class SeriesAnalysisConfInfo { int block_size; // Number of grid points to read concurrently double vld_data_thresh; // Minimum valid data ratio for each point - double hss_ec_value; // MCTS HSS expected correct value + double hss_ec_value; // HSS expected correct value bool rank_corr_flag; // Flag for computing rank correlations ConcatString tmp_dir; // Directory for temporary files diff --git a/src/tools/core/stat_analysis/aggr_stat_line.cc b/src/tools/core/stat_analysis/aggr_stat_line.cc index 5cfcb263f2..8aee0dbe74 100644 --- a/src/tools/core/stat_analysis/aggr_stat_line.cc +++ b/src/tools/core/stat_analysis/aggr_stat_line.cc @@ -952,6 +952,7 @@ void aggr_ctc_lines(LineDataFile &f, STATAnalysisJob &job, aggr.far_ts.clear(); aggr.csi_ts.clear(); aggr.hk_ts.clear(); + cur.cts.set_ec_value(job.hss_ec_value); aggr.cts_info = cur; aggr.hdr.clear(); m[key] = aggr; @@ -1139,6 +1140,7 @@ void aggr_mctc_lines(LineDataFile &f, STATAnalysisJob &job, if(m.count(key) == 0) { aggr.valid_ts.clear(); aggr.acc_ts.clear(); + cur.cts.set_ec_value(job.hss_ec_value); aggr.mcts_info = cur; aggr.hdr.clear(); m[key] = aggr; @@ -3607,6 +3609,7 @@ void mpr_to_ctc(STATAnalysisJob &job, const AggrMPRInfo &info, // Initialize // cts_info.clear(); + cts_info.cts.set_ec_value(job.hss_ec_value); cts_info.fthresh = job.out_fcst_thresh[i_thresh]; cts_info.othresh = job.out_obs_thresh[i_thresh]; @@ -3632,6 +3635,7 @@ void mpr_to_cts(STATAnalysisJob &job, const AggrMPRInfo &info, // Initialize // cts_info.clear(); + cts_info.cts.set_ec_value(job.hss_ec_value); cts_info.fthresh = job.out_fcst_thresh[i_thresh]; cts_info.othresh = job.out_obs_thresh[i_thresh]; diff --git a/src/tools/core/stat_analysis/parse_stat_line.cc b/src/tools/core/stat_analysis/parse_stat_line.cc index 2a5ff8d0d5..2c3c8b492b 100644 --- a/src/tools/core/stat_analysis/parse_stat_line.cc +++ b/src/tools/core/stat_analysis/parse_stat_line.cc @@ -92,6 +92,9 @@ void parse_ctc_ctable(STATLine &l, TTContingencyTable &ct) { // FN_ON ct.set_fn_on(atoi(l.get_item("FN_ON"))); + // EC_VALUE + ct.set_ec_value(atof(l.get_item("EC_VALUE"))); + return; }