如何创建新日期并将其作为索引插入到熊猫数据框中?

问题描述 投票:0回答:1

我预测下个月的总销售额,并将日期设置为数据框中的索引。如何计算新的即将到来的月份作为索引并将其放在同一数据框中的新行中?

我在下面使用此代码从上一个日期获取新日期:

from datetime import timedelta

last_date = df.iloc[[-1]].index
last_date = last_date + timedelta(days=30)

df= df.append(pd.DataFrame(index=[last_date]))

df.tail()

但是输出似乎不正确。我希望新的即将发布的索引的结果如下所示:

2017-07-30

但是,相反,输出是这样的:

((2017-07-30 00:00:00,)

如何删除时间以及那里不必要的符号?

python pandas datetime timedelta
1个回答
0
投票

您很接近,为避免出现[],请移除MultiIndex

df = df.append(pd.DataFrame(index=last_date))

样本

from datetime import timedelta

rng = pd.date_range('2017-04-03', periods=3)
df = pd.DataFrame({'a': range(3)}, index=rng)  

last_date = df.iloc[[-1]].index
last_date = last_date + timedelta(days=30)


df = df.append(pd.DataFrame(index=last_date))
print (df)
              a
2017-04-03  0.0
2017-04-04  1.0
2017-04-05  2.0
2017-05-05  NaN

使用[]测试DataFrame的索引:

df = pd.DataFrame(index=[last_date])
print (df.index)
MultiIndex([('2017-05-05',)],
           )
© www.soinside.com 2019 - 2024. All rights reserved.