The default behavior for adding and solving with noisemodels has changed from Pastas 1.5. Find more information here


evp(obs, sim=None, res=None, missing='drop', weighted=False, max_gap=30)[source]#

Compute the (weighted) Explained Variance Percentage (EVP).

  • obs (pandas.Series) – Series with the observed values.

  • sim (pandas.Series, optional) – The Series with the simulated values.

  • res (pandas.Series, optional) – The Series with the residual values. If time series for the residuals are provided, the sim and obs arguments are ignored. Note that the residuals must be computed as obs - sim here.

  • missing (str, optional) – string with the rule to deal with missing values. Only “drop” is supported now.

  • weighted (bool, optional) – If weighted is True, the variances are computed using the time step between observations as weights. Default is False.

  • max_gap (int, optional) – maximum allowed gap period in days to use for the computation of the weights. All time steps larger than max_gap are replace with the max_gap value. Default value is 30 days.

Return type



Commonly used goodness-of-fit metric groundwater level models as computed in von Asmuth et al. [2012].

\[\text{EVP} = \frac{\sigma_h^2 - \sigma_r^2}{\sigma_h^2} * 100\]

where \(\sigma_h^2\) is the variance of the observations and \(\sigma_r^2\) is the variance of the errors. The returned value is bounded between 0% and 100%.