在dataframe python中的beging by timestep中添加一个值

2024-09-24 04:27:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个如下所示的数据帧

  df =
   index                value
2014-05-21 10:00:00      13.0
2014-05-21 10:30:00       8.0
2014-05-21 11:00:00       9.0
2014-05-21 11:30:00       7.0
2014-05-21 12:00:00       2.0
....

我如何在开始时添加一个新值2,它将是

^{pr2}$

以及

type(df.index) = pandas.core.indexes.datetimes.DatetimeIndex

我想在第一个索引中加上这个值,datetime将由timestep自动计算(在本例中是30分钟),有更好的方法吗?在

提前谢谢!在


Tags: 数据corepandasdfdatetimeindexvaluetype
2条回答

也可以将reindex与索引append一起使用

df.reindex(pd.Index(['2014-05-21 09:30:00']).append(df.index),fill_value=2)
Out[116]: 
                     value
2014-05-21 09:30:00    2.0
2014-05-21 10:00:00   13.0
2014-05-21 10:30:00    8.0
2014-05-21 11:00:00    9.0
2014-05-21 11:30:00    7.0
2014-05-21 12:00:00    2.0

选项1

df.loc[df.index[0] - pd.offsets.Minute(30), 'value'] = 2
df = df.sort_index()

df

                     value
index                     
2014-05-21 09:30:00    2.0
2014-05-21 10:00:00   13.0
2014-05-21 10:30:00    8.0
2014-05-21 11:00:00    9.0
2014-05-21 11:30:00    7.0
2014-05-21 12:00:00    2.0

方案2

设置索引的频率,以便可以自然递减。
这是来自@rootHERE的回答

^{pr2}$

相关问题 更多 >