pastas.stats.metrics.rmse ========================= .. py:function:: pastas.stats.metrics.rmse(obs: pandas.Series | None = None, sim: pandas.Series | None = None, res: pandas.Series | None = None, missing: str = 'drop', weighted: bool = False, max_gap: int = 30) -> float Compute the (weighted) Root Mean Squared Error (RMSE). :param sim: Series with the simulated values. :type sim: pandas.Series, optional :param obs: The Series with the observed values. :type obs: pandas.Series, optional :param res: 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. :type res: pandas.Series, optional :param missing: string with the rule to deal with missing values. Only "drop" is supported now. :type missing: str, optional :param weighted: Weight the values by the normalized time step to account for irregular time series. Default is False. :type weighted: bool, optional :param max_gap: 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. :type max_gap: int, optional .. rubric:: Notes Computes the Root Mean Squared Error (RMSE) as follows: .. math:: \text{RMSE} = \sqrt{\sum_{i=1}^{N} w_i \epsilon_i^2} where :math:`N` is the number of error :math:`\epsilon`. .. !! processed by numpydoc !!