r - 使用 POSIXct 在 R 中合并数据帧
问题描述
我有两个数据帧(per_frame,值) - 第一个包含 24 小时周期的 POSIXct 值,间隔为 15 分钟。
periods = as.POSIXct(seq.POSIXt("2019-06-01 04:00:00 UTC","2019-06-02 03:45:00 UTC", by=900))
per_frame = data.frame(Period = periods)
第二个包含一列用于上述一些时间值(但不是全部)和另一列用于“平均值”。
时期 | avg_value |
---|---|
2019-06-01 04:45:00 | 4 |
2019-06-01 05:00:00 | 7 |
2019-06-01 05:45:00 | 9 |
2019-06-01 08:45:00 | 2 |
2019-06-01 10:00:00 | 4 |
我想创建一个新的数据框,将可用的平均值添加到第一个数据框,在没有的地方留下“缺失值”。我认为这可以使用以下方法轻松实现:
Combined= merge(per_frame, values, by = "Period", all.x = TRUE)
但是,它创建的新数据框对于每个 Period 都有不正确的值。它将值添加到值数据框中没有相应平均值的某些时间段。我不确定我在这里做错了什么?
解决方案
道歉 - 经过一番调查,我意识到两个数据库中使用的时区不同 - 因此在合并时不匹配。我实际上不确定为什么会发生这种情况,因为我使用相同的数据导入来生成第一个数据帧的开始和结束值以及第二个数据帧的值。尽管使用 as.POSIXct 函数中的 'tz' 值,我还是能够覆盖它。
推荐阅读
- javascript - 如何在 php 脚本中的 MySql 查询中存储和显示 JavaScript 变量中的日期值?
- python - 使用字典列表解析 JSON
- azure - 使用 Azure REST API 或 Azure 数据工厂从 Azure Timeseries 见解中导出数据
- python - 熊猫数据框 - 如何消除列中的重复单词
- c# - 如何从 SQL Server 表直接与 Active Directory 数据建立关系?
- android - 我们应该使用 url.connect() 在 android 中发出 http 请求吗?
- javascript - TS2339:“路由器”类型上不存在属性“使用”
- neural-network - 使用 DataLoaders 在 PyTorch 中验证数据集
- python - 排名列表之间的一致性
- c# - 尝试在 C# Visual Studio 中创建 7zip 文件时出错