【发布时间】:2014-04-28 11:33:55
【问题描述】:
我有一个数据框,使用以下代码生成:
time_index = pd.date_range(start=datetime(2013, 1, 1, 3),
end=datetime(2013, 1, 2, 2, 59),
freq='5T')
grid_columns = [u'in_brd', u'in_alt', u'out_brd', u'out_alt']
grid_proto = pd.DataFrame(index=time_index, columns=grid_columns)
我还向这个数据框添加了一些数据。
当我尝试在基本数据框中使用int 偏移量浏览索引时,我得到了一切正确:
In[152]: grid_proto.index[0] + 1
Out[152]: Timestamp('2013-01-01 03:05:00', tz=None)
但是,如果我尝试使用某种切片,则会收到错误消息:
In[153]: z = grid_proto[pd.notnull(x.in_brd)]
In[154]: z.index[0] + 1
Traceback (most recent call last):
File "<ipython-input-151-3ce8a4e5e2d6>", line 1, in <module>
z.index[0] + 1
File "tslib.pyx", line 664, in pandas.tslib._Timestamp.__add__ (pandas\tslib.c:12372)
ValueError: Cannot add integral value to Timestamp without offset.
我知道这是因为在第一种情况下,我使用指向 DatetimeIndex 元素的链接而不是标量。在第二种情况下,我得到了第一个索引元素的精确标量 Timestamp 值。我说的对吗?
如何正确处理这个偏移量? (我需要浏览这样的切片)
【问题讨论】: