Python 在计算中使用索引
我有一个df,它包含一个日期索引和另一个不同日期的列。我想在我的df中添加一列,即这两个日期之间的差值(以天为单位)。如何在计算中直接使用索引,而不必将其作为列引入df MWE:Python 在计算中使用索引,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有一个df,它包含一个日期索引和另一个不同日期的列。我想在我的df中添加一列,即这两个日期之间的差值(以天为单位)。如何在计算中直接使用索引,而不必将其作为列引入df MWE: 在这种类型的计算中,访问索引的最佳方式是什么?df[“delta”]=df[“某个日期”]-df.index。顺便说一下,您的MWE没有运行。啊,这样您就可以直接对索引和序列进行算术运算了?很高兴知道!如果你想回答这个问题,我会接受的。你能给我指出一些关于这种行为的文档吗?让我概括一下,因为这肯定会在某个时候出现:如果
在这种类型的计算中,访问索引的最佳方式是什么?
df[“delta”]=df[“某个日期”]-df.index。顺便说一下,您的MWE没有运行。啊,这样您就可以直接对索引和序列进行算术运算了?很高兴知道!如果你想回答这个问题,我会接受的。你能给我指出一些关于这种行为的文档吗?让我概括一下,因为这肯定会在某个时候出现:如果你有一个多索引而不仅仅是DatetimeIndex,你如何访问索引的特定级别?为了解决你的后续问题:df['delta']=df['some_date']-df.index.get_level_值('date'))
我添加了几个DUP。datetime
one处理访问单个索引数组;另一种是访问多索引中的多个数组。请注意,pd.DataFrame.ix
已被弃用,以供参考。
df = pd.DataFrame(data = {"val": [1,2,3,4,5], "some_date": np.arange("2000-02-01", "2000-02-06", dtype="datetime64[D]")}, index = pd.date_range(start = "2000-01-01", end = "2000-01-05", periods = 5, name="date"))
#would like to do something like this
df["delta"] = df["some_date"] - df["date"] #produces an error