0

私はpandas.Seriesタイムスタンプ付きのデータを持っています - 基本的には一連のイベントです:

0      2012-09-05 19:28:52
1      2012-09-05 19:28:52
2      2012-09-05 19:44:37
3      2012-09-05 19:44:37
4      2012-09-05 20:04:53
5      2012-09-05 20:04:53
6      2012-09-05 20:12:59
7      2012-09-05 20:13:15
8      2012-09-05 20:13:15
9      2012-09-05 20:13:15

各期間のイベント数を保持pandas.TimeSeriesする特定のpandas.date_range(例: 15 分間隔; )を作成したいと思います。pandas.date_range(start, end, freq='15T')これはどのように達成できますか?

ありがとう、ピーター

4

1 に答える 1

2

データの代わりにイベントのタイムスタンプをシリーズのインデックスとして使用する場合は、リサンプルでこれを行うことができます。以下の例では、シリーズのインデックスはタイムスタンプであり、データは event_id であり、基本的にシリーズのインデックスです。

In [47]: s
Out[47]:
                      event_id
timestamp
2012-09-05 19:28:52          0
2012-09-05 19:28:52          1
2012-09-05 19:44:37          2
2012-09-05 19:44:37          3
2012-09-05 20:04:53          4
2012-09-05 20:04:53          5
2012-09-05 20:12:59          6
2012-09-05 20:13:15          7
2012-09-05 20:13:15          8
2012-09-05 20:13:15          9

resample (このメソッドは DataFrame でも使用できます) は、この場合 15 分の期間で新しいシリーズを提供します。バケットの終了時間 (期間) を使用して参照します (ラベルarg でこれを制御できます)。

In [48]: s.resample('15Min', how=len)
Out[48]:
                      event_id
timestamp
2012-09-05 19:30:00          2
2012-09-05 19:45:00          2
2012-09-05 20:00:00          0
2012-09-05 20:15:00          6
于 2012-09-06T11:16:56.250 に答える