2017-04-26 127 views
6

,如果有任何有效的方法或一個班輪,給定一個大熊貓DatetimeIndex DATE1,返回DatetimeIndex date2的這是第一天,我想知道下個月的時間?熊貓:在每月轉換日期爲下個月的第一天

例如,如果DATE1是 '2011-09-30' 然後DATE2是 '2011-10-01'?

我已經試過這一個班輪

df.index.to_period("M").to_timestamp('M') 

但這似乎只能返回「同月的最後一天」。在這裏可以做一些日期時間算術嗎?

謝謝!

回答

11

您可以使用pd.offsets.MonthBegin()

In [261]: d = pd.to_datetime(['2011-09-30', '2012-02-28']) 

In [262]: d 
Out[262]: DatetimeIndex(['2011-09-30', '2012-02-28'], dtype='datetime64[ns]', freq=None) 

In [263]: d + pd.offsets.MonthBegin(1) 
Out[263]: DatetimeIndex(['2011-10-01', '2012-03-01'], dtype='datetime64[ns]', freq=None) 

你會發現很多的例子在official Pandas docs

+0

這是很好的解決方案;) – jezrael

+0

@jezrael,謝謝! :) – MaxU

+0

@MaxU令人驚歎。這可能會節省我幾個小時。是的,我是Python新手,剛剛跳過手冊的這一部分,因爲我不太明白。感謝您爲更多示例提供資源! – yuqli

相關問題