我想选择过去 4 个月的数据。我想从月初开始,所以如果现在是 7 月 28 日,我想要从 March1-July28 的数据。
目前我使用 DateOffset,我意识到它正在调用 March28-July28 并遗漏了我的很多数据。
df = pd.read_csv('MyData.csv')
df['recvd_dttm'] = pd.to_datetime(df['recvd_dttm'])
#Only retrieve data before now (ignore typos that are future dates)
mask = df['recvd_dttm'] <= datetime.datetime.now()
df = df.loc[mask]
# get first and last datetime for final week of data
range_max = df['recvd_dttm'].max()
range_min = range_max - pd.DateOffset(months=4)
# take slice with final week of data
df = df[(df['recvd_dttm'] >= range_min) &
(df['recvd_dttm'] <= range_max)]
我查找了其他答案并找到了这个:如何使用 datetime Python 模块计算距当前日期六个月的日期?所以我尝试使用relativedelta(months=-4)
并得到了一个ValueError: Length mismatch: Expected axis has 1 elements, new values have 3 elements
任何帮助,将不胜感激。