如何在不同的时间尺度上计算RMSE

时间:2016-07-08 02:48:43

标签: r mean variance pearson-correlation hydrogof

我每天有18年的模拟和观察数据,我可以使用此代码计算RMSE;

sqrt( mean( (df$simulated-df$observed)^2 , na.rm = TRUE ) )

但我必须在不同时间序列的整个时间段,年度,月度,每周和季节性时间尺度上计算RMSE。 此外,我想执行相关系数,方差,偏差和均值,并将所有结果放在一个文件中。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

您应该结帐hydroTSMhydroGOF个套餐。他们应该拥有你想要的一切

示例:

    # Getting the new numeric goodness-of-fit measures
    gof(sim = Simulated, obs = Observed)

    # Plot 'obs' vs 'sim' for the daily,
    # monthly and annual time series 
    ggof(sim = Simulated, obs = Observed, ylab = "Q (ft3/day)",
         ftype = "dma", FUN = mean)

Daily, Monthly and Annual timescale simulation vs observation

    ggof(sim = Sim, obs = Obs, ylab = "Q (ft3/day)",
         ftype = "seasonal", FUN = mean)

Seasonal simulation vs observation

答案 1 :(得分:0)

如果缩放是一个问题,那么建议您事先对数据进行标准化和规范化。这可以通过将日期编码为有意义的数字表示来完成。

您可以从拟合模型的摘要中提取所需的大部分统计数据,您可以使用str()进行探索。您还可以从Metrics包中获得许多有用的统计信息,包括RMSE。