Python 熊猫的滞后参数?

Python 熊猫的滞后参数?,python,pandas,parameters,Python,Pandas,Parameters,我是新来的熊猫。我有一个TTI的数据帧,多年来它是按一天中的小时排序的。我想添加一个新列,显示去年每个值的tti值。我写了这段代码: import pandas as pd tti = pd.read_csv("c:\\users\\Mehrdad\\desktop\\Hourly_TTI.csv") tti['new_date'] = pd.to_datetime(tti['Date']) tti['last_year'] = tti['TTI'].shift(1,freq='1-Jan-20

我是新来的熊猫。我有一个TTI的数据帧,多年来它是按一天中的小时排序的。我想添加一个新列,显示去年每个值的tti值。我写了这段代码:

import pandas as pd
tti = pd.read_csv("c:\\users\\Mehrdad\\desktop\\Hourly_TTI.csv")
tti['new_date'] = pd.to_datetime(tti['Date'])
tti['last_year'] = tti['TTI'].shift(1,freq='1-Jan-2009')
print tti.head(10)
但我不知道如何定义移位的频率值!这样一来,我的数据将比我的第一个日期(2010年1月1日)晚一年

df['last_year'] = df['date'].apply(lambda x: x - pd.DateOffset(years=1))
df['new_value'] = df.loc[df['last_year'],:]
df.shift
只能移动固定距离。 使用偏移量创建新的日期时间索引,并使用新索引检索值。请注意截断第一年的日期

df.shift
只能移动固定距离。
使用偏移量创建新的日期时间索引,并使用新索引检索值。请注意截断第一年的日期。

您不想将
freq='Y'
作为第一年的日期吗?嗨,约翰。我确实使用了“Y”表示频率,但我收到了此“valueError”消息。您不想要
freq='Y'
表示年份吗?嗨,John。我确实使用“Y”表示频率,但我收到了“valueError”消息。