Given是一个Pandas DataFrame,其数字索引表示相对月份数:
df = pd.DataFrame(columns=['A', 'B'], index=np.arange(1,100))
df
A B
1 NaN NaN
2 NaN NaN
3 NaN NaN
...
如何通过指定开始日期(例如2018-11-01)将索引转换为DateTimeIndex?
magic_function(df, start='2018-11-01', delta='month')
A B
2018-11-01 NaN NaN
2018-12-01 NaN NaN
2019-01-01 NaN NaN
...
我希望一般解决方案也适用于任意增量,例如每日或每年的系列。
答案 0 :(得分:1)
idx=pd.date_range(start='2018-11-01',periods =len(df),freq='MS')
df.index=idx
答案 1 :(得分:0)
我不确定使用Pandas,但是使用普通datetime
不能只这样做吗?
import datetime
start=datetime.date(2018,1,1)
months = 15
adjusted = start.replace(year=start.year + int(months/12), month=months%12)