【问题标题】:How to calculate Mean Bias Error(MBE) in Python?如何在 Python 中计算平均偏差误差(MBE)?
【发布时间】:2020-05-13 01:34:58
【问题描述】:

我正在尝试为 Python 中的一组实际和测试预测计算 平均偏差误差(MBE)。我查看了 sklearn.metrics 库或 NumPy,但没有列出计算它的方法。

任何人都可以建议任何库或计算方法吗?

谢谢, 德巴扬

【问题讨论】:

标签: python numpy scikit-learn statistics


【解决方案1】:

我也没有找到计算它的库,但你可以试试这个:

def MBE(y_true, y_pred):
    '''
    Parameters:
        y_true (array): Array of observed values
        y_pred (array): Array of prediction values

    Returns:
        mbe (float): Biais score
    '''
    y_true = np.array(y_true)
    y_pred = np.array(y_pred)
    y_true = y_true.reshape(len(y_true),1)
    y_pred = y_pred.reshape(len(y_pred),1)   
    diff = (y_true-y_pred)
    mbe = diff.mean()
    print('MBE = ', mbe)

【讨论】:

    【解决方案2】:

    MBE 被定义为预测值和真实值之间差异的平均值,因此您可以使用两个数据源之间的简单平均差异来计算它:

    import numpy as np
    data_true = np.random.randint(0,100,size=100)
    data_predicted = np.random.randint(0,100,size=100) - 50
    MBE = np.mean(data_predicted - data_true) #here we calculate MBE
    

    请注意,我从预测值中减去了 50,只是为了能够观察到预测实际上与真实值有偏差。

    【讨论】:

      猜你喜欢
      • 2022-06-27
      • 2020-07-27
      • 2013-09-06
      • 1970-01-01
      • 2015-07-03
      • 2022-10-30
      • 2016-03-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多