[英]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 看起來像:
時間 | 計數器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.