@@ -50,33 +50,30 @@ metric_timeseries_plot <- function(metric_dat, var, unit = NULL, filename = NA,
5050 sharpness <- mean(sub_dat $ model_q95 - sub_dat $ model_q05 , na.rm = TRUE )
5151 bias <- mean(sub_dat $ model - sub_dat $ obvs , na.rm = TRUE )
5252
53+ pmu_val_str <- " N/A"
5354 pass_str <- " N/A"
5455 if (" obs_se" %in% colnames(sub_dat ) && " obs_n" %in% colnames(sub_dat )) {
5556 valid_pmu <- ! is.na(sub_dat $ obs_se ) & ! is.na(sub_dat $ obs_n )
5657 if (any(valid_pmu )) {
5758 se2_n <- (sub_dat $ obs_se [valid_pmu ]^ 2 ) * sub_dat $ obs_n [valid_pmu ]
5859 pooled_var <- sum(se2_n ) / sum(sub_dat $ obs_n [valid_pmu ])
5960 pmu <- sqrt(pooled_var )
61+ pmu_val_str <- sprintf(" %.2f" , pmu )
6062
61- passes_validation <- (coverage_pct > = 90 ) && (abs(bias ) < pmu )
63+ passes_validation <- (! is.na( coverage_pct ) && coverage_pct > = 90 ) && (abs(bias ) < pmu )
6264 pass_str <- ifelse(passes_validation , " PASS" , " FAIL" )
6365 }
6466 }
6567
6668 data.frame (
6769 site = sub_dat $ site [1 ],
6870 variable = sub_dat $ variable [1 ],
69- label = sprintf(" Coverage: %.1f%%\n Sharpness: %.2f\n Bias: %.2f\n PMU: %s" , coverage_pct , sharpness , bias , pass_str )
71+ label = sprintf(" Coverage: %.1f%%\n Sharpness: %.2f\n Bias: %.2f\n PMU: %s\n Status: %s " , coverage_pct , sharpness , bias , pmu_val_str , pass_str )
7072 )
7173 }))
7274
7375 # Determine if model "passes" at each point based on available intervals
74- if (" obvs_sd" %in% colnames(metric_dat )) {
75- metric_dat $ Pass <- (metric_dat $ obvs - metric_dat $ obvs_sd ) < = metric_dat $ model_q95 &
76- (metric_dat $ obvs + metric_dat $ obvs_sd ) > = metric_dat $ model_q05
77- } else {
78- metric_dat $ Pass <- metric_dat $ obvs > = metric_dat $ model_q05 & metric_dat $ obvs < = metric_dat $ model_q95
79- }
76+ metric_dat $ Pass <- metric_dat $ obvs > = metric_dat $ model_q05 & metric_dat $ obvs < = metric_dat $ model_q95
8077
8178 if (any(! is.na(metric_dat $ Pass ))) {
8279 metric_dat $ Observation_Status <- ifelse(metric_dat $ Pass , " Observed (Pass)" , " Observed (Fail)" )
0 commit comments