簡體   English   中英

Pandas 合並兩個時間序列不匹配的數據庫

[英]Pandas Merge two databases with not matching time series

嘗試合並 Python 中的 2 個 DB,具有一個時間范圍,但時間值不同。 С = pd.merge_asof(A, B, on='time') 給出 TypeError: No matching signature found

一個

時間 計數器0 計數器1
2021-05-27 19:09:00 0.0172 0.0207
2021-05-27 19:09:15 0.0483 0.0517
2021-05-27 19:09:30 0.0621 0.0655
2021-05-27 19:09:45 0.0897 0.0931
2021-05-27 19:10:15 0.155 0.155

時間 速度 C D
2021-05-27 19:09:13 1 1
2021-05-27 19:09:13 0 2 2
2021-05-27 19:09:14 0.42 2 3
2021-05-27 19:09:14 0 3 4
2021-05-27 19:09:15 0.4 5
2021-05-27 19:10:05 0.1 2 3

我希望 C 看起來像:

C

時間 計數器0 計數器1 速度 C D
2021-05-27 19:09:00 0.0172 0.0207 不適用 不適用 不適用
2021-05-27 19:09:13 不適用 不適用 不適用 1 1
2021-05-27 19:09:13 不適用 不適用 0 2 2
2021-05-27 19:09:14 不適用 不適用 0.42 2 3
2021-05-27 19:09:14 不適用 不適用 0 3 4
2021-05-27 19:09:15 0.0483 0.0517 0.4 不適用 5
2021-05-27 19:09:30 0.0621 0.0655 不適用 不適用 不適用
2021-05-27 19:09:45 0.0897 0.0931 不適用 不適用 不適用
2021-05-27 19:10:05 不適用 不適用 0.1 2 3
2021-05-27 19:10:15 0.155 0.155 不適用 不適用 不適用

您在尋找外部連接嗎?

c = a.merge(b, on='time', how='outer').sort_values('time')

                 time  counter0  counter1  rate    C    D
0 2021-05-27 19:09:00    0.0172    0.0207   NaN  NaN  NaN
5 2021-05-27 19:09:13       NaN       NaN   NaN  1.0  1.0
6 2021-05-27 19:09:13       NaN       NaN  0.00  2.0  2.0
7 2021-05-27 19:09:14       NaN       NaN  0.42  2.0  3.0
8 2021-05-27 19:09:14       NaN       NaN  0.00  3.0  4.0
1 2021-05-27 19:09:15    0.0483    0.0517  0.40  NaN  5.0
2 2021-05-27 19:09:30    0.0621    0.0655   NaN  NaN  NaN
3 2021-05-27 19:09:45    0.0897    0.0931   NaN  NaN  NaN
9 2021-05-27 19:10:05       NaN       NaN  0.10  2.0  3.0
4 2021-05-27 19:10:15    0.1550    0.1550   NaN  NaN  NaN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM