【发布时间】:2025-11-27 01:20:04
【问题描述】:
我已经看到这个问题的各种解决方案仅基于日期,但时间部分让我感到困惑。我有两个带有 POSIXct 列的数据框,称为“日期时间”。对于 DF1,该列的数据四舍五入到最接近的小时。对于 DF2,时间分量不四舍五入到最接近的小时,并且可以随时发生。数据框如下所示:
DF1
| datetime | X | Y | Z |
|---|---|---|---|
| 2020-09-01 03:00:00 | 1 | 3 | 4 |
| 2020-09-02 12:00:00 | 12 | 3 | 5 |
| 2020-09-02 22:00:00 | 4 | 9 | 19 |
| 2020-09-03 01:00:00 | 4 | 10 | 2 |
| 2020-09-04 06:00:00 | 4 | 12 | 1 |
| 2020-09-04 08:00:00 | 11 | 13 | 10 |
DF2
| datetime | Var |
|---|---|
| 2020-09-01 02:23:14 | A |
| 2020-09-01 03:12:09 | B |
| 2020-09-02 11:52:15 | A |
| 2020-09-02 12:15:44 | B |
| 2020-09-02 22:31:56 | A |
| 2020-09-02 21:38:05 | B |
| 2020-09-03 01:11:39 | A |
| 2020-09-03 00:59:33 | B |
| 2020-09-04 05:12:19 | A |
| 2020-09-04 06:07:09 | B |
| 2020-09-04 08:22:28 | A |
| 2020-09-04 07:50:17 | B |
我想要的是基于此列使用与 DF1 中的“日期时间”最接近的日期和时间合并这两个数据帧,使其看起来像这样:
| datetime | X | Y | Z | Var |
|---|---|---|---|---|
| 2020-09-01 03:00:00 | 1 | 3 | 4 | B |
| 2020-09-02 12:00:00 | 12 | 3 | 5 | A |
| 2020-09-02 22:00:00 | 4 | 9 | 19 | B |
| 2020-09-03 01:00:00 | 4 | 10 | 2 | B |
| 2020-09-04 06:00:00 | 4 | 12 | 1 | B |
| 2020-09-04 08:00:00 | 11 | 13 | 10 | B |
谢谢!
【问题讨论】:
-
我很抱歉,但我能够找到之前非常相似的问题并提供了一个有用的答案:*.com/questions/39282749/…