【发布时间】:2018-10-09 13:05:51
【问题描述】:
我有一个pandas.DatetimeIndex['2018-01-01', '2018-01-04')(包括开始,结束排除)和freq=1D:
>>> index = pd.DatetimeIndex(start='2018-01-01',
end='2018-01-04',
freq='1D',
closed='left')
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03'],
dtype='datetime64[ns]',
freq='D')
如何再次获得正确的打开end='2018-01-04' 属性?我需要它用于具有时间戳范围的数据库查询。
- 没有
index.end -
index[-1]返回'2018-01-03' -
index[-1] + index.freq在这种情况下有效,但对于freq='2D'是错误的
【问题讨论】:
-
为什么不用
max(index)? -
因为它会返回
index[-1]而不是结束参数。 -
@AnnaIliukovich-Strakovskaia
max(index)返回'2018-01-03'就像index[-1]。我想要'2018-01-04',因为这是我在构造函数中的end。 -
创建索引时为什么不直接保存?
-
@user3483203 我可以创建一个具有
start/end/freq属性的虚拟对象,然后传递它并仅在需要时动态创建DatetimeIndex。如果此DatetimeIndex已附加到现有DataFrame,则不太实用。我想避免保留太多变量。