Description Usage Arguments Details Value See Also Examples

View source: R/calculate_stats.R

`CalcModPerfMulti`

calculates model performance statistics for flux
output.

1 2 3 | ```
CalcModPerfMulti(flxDf.mod, flxDf.obs, flxCol.mod = "q_cms",
flxCol.obs = "q_cms", stdate = NULL, enddate = NULL,
writeOutPairDf = NULL, fileTag = NULL)
``` |

`flxDf.mod` |
The flux output dataframe (required). Assumes only one forecast point per file, so if you have multiple forecast points in your output dataframe, use subset to isolate a single forecast point's data. Also assumes model output and observation both contain POSIXct fields (called "POSIXct"). |

`flxDf.obs` |
The observed flux dataframe. Assumes only one observation point per file, so if you have multiple observation points in your dataframe, use subset to isolate a single point's data. Also assumes model output and observation both contain POSIXct fields (called "POSIXct"). |

`flxCol.mod` |
The column name for the flux time series for the MODEL data (default="q_cms") |

`flxCol.obs` |
The column name for the flux time series for the OBSERVED data (default="q_cms") |

`stdate` |
Start date for statistics (DEFAULT=NULL, all records will be used). Date MUST be specified in POSIXct format with appropriate timezone (e.g., as.POSIXct("2013-05-01 00:00:00", format="%Y-%m-%d %H:%M:%S", tz="UTC")) |

`enddate` |
End date for statistics (DEFAULT=NULL, all records will be used). Date MUST be specified in POSIXct format with appropriate timezone (e.g., as.POSIXct("2013-05-01 00:00:00", format="%Y-%m-%d %H:%M:%S", tz="UTC")) |

`writeOutPairDf` |
character path/name for file to output the data frame constructed before calculating the statistics and various aggregations. NULL by default gives no output. |

`fileTag` |
A to be inserted in the file name, just before the file extension. |

`CalcModPerfMulti`

reads a model flux time series (i.e., created using
`ReadFrxstPts`

) and an observation time series (i.e., created
using `ReadUsgsGage`

) and calculates model performance statistics
(Nash-Sutcliffe Efficiency, Rmse, etc.) at various time scales and for low
and high fluxes. The tool will subset data to matching time periods (e.g., if
the observed data is at 5-min increments and modelled data is at 1-hr
increments, the tool will subset the observed data to select only
observations on the matching hour break).

`CalcModPerfMulti`

calculates the same statistics as
`CalcModPerf`

) but returns results as a single-row vs. multi-row
dataframe. This is intended to streamline compiling statistics for multiple
data runs or multiple sites.

Performance Statistics:

(mod = model output, obs = observations, n =
sample size)

n: sample size

nse: Nash-Sutcliffe Efficiency

*nse = 1 - ( sum((obs - mod)^2) / sum((obs - mean(obs))^2) )*nselog: log-transformed Nash-Sutcliffe Efficiency

*nselog = 1 - ( sum((log(obs) - log(mod))^2) / sum((log(obs) - mean(log(obs)))^2) )*-
cor: correlation coefficient

*cor = cor(mod, obs)* rmse: root mean squared error

*rmse = sqrt( sum((mod - obs)^2) / n )*-
rmsenorm: normalized root mean squared error

*rmsenorm = rmse / (max(obs) - min(obs))* bias: percent bias

*bias = sum(mod - obs) / sum(obs) * 100*msd: mean signed deviation

*msd = mean(mod - obs)*mae: mean absolute error

*mae = mean(abs(mod - obs))*errcom: error in the center-of-mass of the flux, where center-of-mass is the hour/day when 50% of daily/monthly/water-year flux has occurred. Reported as number of hours for daily time scale and number of days for monthly and yearly time scales.

errmaxt: Error in the time of maximum flux. Reported as number of hours for daily time scale and number of days for monthly and yearly time scales).

errfdc: Error in the integrated flow duration curve between 0.05 and 0.95 exceedance thresholds (in native flow units).

errflash: Error in the Richards-Baker Flashiness Index

*R-B Index = sum(abs(q_t - q_t-1)) / sum(q)*.

Time scales/Flux types:

t = native model/observation time step (e.g., hourly)

dy = daily time step

mo = monthly time step

yr = water-year time step

max10 = high flows; restricted to the portion of the time series where the observed flux is in the highest 10% (native time step)

min10 = low flows; restricted to the portion of the time series where the observed flux is in the lowest 10% (native time step)

A new dataframe containing the model performance statistics.

Other modelEvaluation: `CalcModPerf`

,
`CalcNoahmpFluxes`

,
`CalcNoahmpWatBudg`

,
`CalcStatCategorical`

,
`CalcStatCont`

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ```
## Take forecast point model output for Fourmile Creek (modStrh.mod1.fc) and a
## corresponding USGS gage observation file (obsStrh.fc), both at an hourly time
## step, and calculate model performance statistics. The model forecast point
## data was imported using ReadFrxstPts and the gage observation data was
## imported using ReadUsgsGage.
## Not run:
CalcModPerfMulti(modStrd.chrt.fc, obsStr5min.fc)
> Output:
t_n t_nse t_nselog t_cor t_rmse t_rmsenorm t_bias t_msd t_mae t_errfdc t_errflash
116 0.81 0.67 0.91 0.211 8.48 7.1 0.0313 0.1385 0.04 0.0132
dy_n dy_nse dy_nselog dy_cor dy_rmse dy_rmsenorm dy_bias dy_msd dy_mae dy_errcom dy_errmaxt dy_errfdc dy_errflash
116 0.81 0.67 0.91 0.211 8.48 7.1 0.0313 0.1385 0 0 0.04 0.0092
mo_n mo_nse mo_nselog mo_cor mo_rmse mo_rmsenorm mo_bias mo_msd mo_mae mo_errcom mo_errmaxt yr_n
5 0.92 0.82 0.96 0.1073 10.35 9.1 0.0324 0.0833 -1.2 0.2 1
yr_bias yr_msd yr_mae yr_errcom yr_errmaxt max10_n max10_nse max10_nselog max10_cor max10_rmse max10_rmsenorm max10_bias max10_msd max10_mae
7.1 0.0313 0.0313 0 4 12 0.46 0.58 0.71 0.348 23.63 -2.8 -0.044 0.248
min10_n min10_nse min10_nselog min10_cor min10_rmse min10_rmsenorm min10_bias min10_msd min10_mae
12 -385.99 -14.59 0.35 0.1678 538.78 112.4 0.056 0.0592
## End(Not run)
``` |

mccreigh/rwrfhydro documentation built on May 12, 2018, 3:08 a.m.

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.