【发布时间】:2019-07-17 19:32:40
【问题描述】:
我有两个数据框,如下所示:
time browncarbon blackcarbon
181.7335 0.105270 NaN
181.3809 0.166545 0.001217
181.6197 0.071581 NaN
422 rows x 3 columns
start end toc
179.9989 180.0002 155.0
180.0002 180.0016 152.0
180.0016 180.0030 151.0
1364 rows x 3 columns
第一个数据帧有一个时间列,每四分钟有一个瞬间。第二个数据帧有两个时间列,每两分钟间隔一次。这两个时间列不会同时开始和结束。但是,它们包含在同一天收集的数据。我怎样才能制作另一个包含以下内容的数据框:
time browncarbon blackcarbon toc
422 rows X 4 columns
但是,Stack Overflow 上有一个相关的答案,它仅适用于时间列是日期时间或时间戳对象的情况。链接为:How to join two dataframes for which column values are within a certain range?
附录1:封装到时间行之一的多个开始行和结束行也应该对应一个目录行,就像现在一样,但是,它应该是多个目录行的平均值,即目前不是这样。
【问题讨论】:
-
如何填写
toc列?时间在哪里? -
而且,您的示例数据并不能真正反映您的描述。例如,我看不到第一个数据帧是如何每 4 分钟间隔一次的。
-
我同意,这不会给出任何结果,因为在您的示例中,没有时间落在第二个数据帧的开始和结束之间。更改您的示例数据框,使第一个数据框的任何
time值都落在第二个数据框的范围内 -
@QuangHoang 是的,应该在时间范围内填写 toc 列。
-
@QuangHoang 时间格式特殊。整数部分代表一年中的哪一天。小数部分表示自最后一天结束以来经过的秒数。例如,下午 12:00 将是 12*3600/86400。
标签: python-3.x pandas