我正在尝试为每行添加一个新的列值,该值必须是包含速度的另一列的均值,并且该值由必须满足timedelta操作条件的datetime列中的前几行(如果已排序)给出。 / p>
具体来说,每一行都包含一个日期时间和一个速度。我需要添加一个新列,以指示过去30天最大范围内的速度平均值。
我尝试使用loc切片并为timedelta操作提供一些条件,但是它没有用。
def add_key_columns(data):
temp_df = data
#Definimos un timedelta para la comparacion
diff = pd.Timedelta("30 days")
temp_df["week_day"] = temp_df["Date"].dt.day
temp_df["year_day"] = temp_df["Date"].dt.dayofyear
temp_df["year_week"] = temp_df["Date"].dt.weekofyear
temp_df["mean_v(n-t)"] = temp_df.loc[temp_df["Date"] - temp_df["Date"] <= diff].mean()
return temp_df
这是越来越错误:
ValueError:传递的项目数量错误11,放置位置表示1