1
所以我的數據是這樣的:如何計算項目的速度在時間序列中的PostgreSQL與移動時間窗口
index price
2015-01-08 07:01:18.601318 10
2015-01-08 07:01:19.100645 10
2015-01-08 07:01:19.600494 24
2015-01-08 07:01:20.101432 22
2015-01-08 07:01:20.102579 235
2015-01-08 07:01:20.600370 1050
2015-01-08 07:01:20.603521 100
2015-01-08 07:01:20.800408 50
2015-01-08 07:01:21.100629 10
2015-01-08 07:01:21.601491 12
2015-01-08 07:01:21.601663 97
我要的是有一個特定的時間長度的移動窗口在每個條目後面說1秒,並計算該窗口內有多少條目。
結果應該是這個樣子:
index price rate
2015-01-08 07:01:18.601318 10 1
2015-01-08 07:01:19.100645 10 2
2015-01-08 07:01:19.600494 24 3
2015-01-08 07:01:20.101432 22 2
2015-01-08 07:01:20.102579 235 3
2015-01-08 07:01:20.600370 1050 4
2015-01-08 07:01:20.603521 100 4
2015-01-08 07:01:20.800408 50 5
2015-01-08 07:01:21.100629 10 6
2015-01-08 07:01:21.601491 12 4
2015-01-08 07:01:21.601663 97 5
這是計算在這些條目被輸入到數據庫的速度。
它看起來像我需要某種滑動擴展窗口,但我不能讓它工作。
如果這可以與一個熊貓DataFrame也可以工作。
df['rate'] = df.groupby(pd.TimeGrouper('1s'))['price'].transform('count')
當試圖讓我獲得高價值的方式。我認爲這是因爲它創建了一個交叉連接。在進行解釋分析時,我從每張表格中提取22行,最終刪除208,留下了許多重複的文件。 – Unic0arn
好吧,它使用獨特和子查詢工作,不幸的是我正在處理相當大的數據集,使這些連接非常耗時。 – Unic0arn
噢,當我說這是可怕的時候,我的意思是。出於好奇,爲什麼你需要每個條目的窗口,而不是按秒分組(即在同一秒內兩個條目將具有相同的速率)? – Dmitri