我想将每日数据的日期索引向前移动一个月。这是为了通过计算两个 Dataframe 来计算每日数据的逐月滚动变化,其中一个 Dataframe 具有正确的时间戳,另一个 Dataframe 具有向前移动一个月的时间戳,而所有其他数据列都相同
问题是并非所有月份的长度都相同,所以我不想将其向前滚动30天。例如,我希望3月24日与2月24日匹配(28天),4月24日与3月24日匹配(31天)。
我尝试了以下几种变化,但没有任何乐趣:
df= pd.read_csv("seven_day.csv", parse_dates=['Date'], index_col=['Date'])
df.shift(periods=1, freq="M")
df.shift(periods=1, freq="MS")
发生的事情是我得到下一个月的结束或开始的所有天在当前月份。例如所有三月的每日数据天去四月的结束或开始。
会非常感激你的意见。
1条答案
按热度按时间wlzqhblo1#
您可以使用
DateOffset
:示例:
输出:
中间体:
其他方式(注意
-
符号):输出:
中间体: