meo*_*eow 2 python period pandas
阅读pandas Period对象的文档会使我困惑,是否有可能创建自定义的Period。习惯上,我的意思是一个不遵循特定频率的dtype周期,但是其中的每个周期PeriodIndex代表手动定义的开始时间戳和结束时间戳。
为了显示:
假设我有n个时间间隔t,其中每个间隔的开始和结束都是来自离散均匀分布随机变量的样本,且其约束为begin <end。
结果看起来像这样:
[(ts_start0, ts_end0), (ts_start1, ts_end1), (ts_start2, ts_end2))]
Run Code Online (Sandbox Code Playgroud)
有没有办法用熊猫Period或类似的东西来编码这样的“随机”间隔/时间/周期?
我认为您可以使用IntervalIndex:
In [18]: pd.IntervalIndex([pd.Interval(1,3), pd.Interval(4, 11), pd.Interval(13, 28)])
Out[18]:
IntervalIndex([(1, 3], (4, 11], (13, 28]]
closed='right',
dtype='interval[int64]')
Run Code Online (Sandbox Code Playgroud)
使用时间戳:
In [25]: pd.IntervalIndex([
...: pd.Interval(pd.to_datetime('2018-01-01'), pd.to_datetime('2018-01-13')),
...: pd.Interval(pd.to_datetime('2018-03-08'), pd.to_datetime('2018-04-29')),
...: pd.Interval(pd.to_datetime('2018-05-03'), pd.to_datetime('2018-07-22'))
...: ])
...:
Out[25]:
IntervalIndex([(2018-01-01, 2018-01-13], (2018-03-08, 2018-04-29], (2018-05-03, 2018-07-22]]
closed='right',
dtype='interval[datetime64[ns]]')
Run Code Online (Sandbox Code Playgroud)
更新:我们可以使用pd.IntervalIndex.from_tuples()构造函数:
In [16]: pd.IntervalIndex.from_tuples([(1,3), (4, 11), (13, 28)], closed='right')
Out[16]:
IntervalIndex([(1, 3], (4, 11], (13, 28]]
closed='right',
dtype='interval[int64]')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
138 次 |
| 最近记录: |