Я хочу вычислить статистику теста для прогноза fb пророка в функции, потому что я хочу усреднить статистику теста по различным прогнозам и точкам отсечения после использования fb-prophet cross_validation, чтобы получить df_cv. Я создал функцию, которую применяю к кадру данных после группировки по точкам среза, чтобы получить показатель для каждой точки среза. Затем я вычисляю среднее значение по всем этим значениям.
Проблема в том, что моя функция возвращает не только значение, которое я ищу, но также 0, а также информацию о dtype. Я все еще могу делать вычисления с возвращенным значением, но когда я хочу построить график и т. Д. Позже, это очень неудобно. Как я могу удалить эти ненужные значения с выхода?
def compute_avg_stats(df_cv,perf_measure):
measures = {'mse':mean_squared_error,'mae':mean_absolute_error,'mape':mean_absolute_percentage_error,'rmse':mean_squared_error}
performance_stats = {}
if perf_measure == 'rmse':
measure = np.sqrt(measures[perf_measure](y_true=df_cv['y'],y_pred=df_cv['yhat']))
else:
measure = measures[perf_measure](y_true=df_cv['yu'],y_pred=df_cv['yhat'])
return measure
df_cv.groupby('cutoff').apply(compute_avg_stats,perf_measure='rmse').to_frame().mean()