我正在尝试为Python中的一组实际和测试预测计算平均偏差误差( MBE )。我查看了sklearn.metrics库或NumPy,但没有列出计算方法。
任何人都可以建议任何库或计算方法的方法吗?
谢谢, 德巴扬
答案 0 :(得分: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)
答案 1 :(得分:0)
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,只是为了观察到预测实际上偏离了真实值。