我为一开始的误会道歉。下面的代码片段给出了您希望的结果
from sklearn.metrics import mean_squared_error
import pandas
import math
import numpy
df = pandas.DataFrame(numpy.random.randint(0, 100, size = (100, 2)), columns = ['labels','predictions']).sort_values(by = 'labels', ascending = True)
def rmse(df):
return numpy.sqrt(mean_squared_error(df['labels'], df['predictions']))
output = df.groupby(numpy.floor(numpy.array(df['labels'] / 7))).apply(rmse)
rmse_df = pandas.DataFrame({'bout': [str(int(output.index[i] * 7)) + ' - ' + str(int(output.index[i + 1] * 7)) for i in range(output.shape[0] - 1)], 'rmse': output.values[:-1]})
您可以为变量更改我的代码中的7s
step
如果要动态更改步骤大小