【发布时间】:2016-02-16 01:42:35
【问题描述】:
我有一个包含以下列的数据框,代表事件的开始和结束时间:
fh_ini fh_end
1 2015-12-07 00:00:00 2015-12-07 00:00:00
2 2015-12-07 00:00:00 2015-12-07 09:52:46
3 2015-12-07 09:20:13 2015-12-07 09:20:19
4 2015-12-07 09:20:22 2015-12-07 09:36:38
5 2015-12-07 09:40:49 2015-12-07 09:41:05
6 2015-12-07 09:45:12 2015-12-07 09:46:05
我想将 fh_end 和 fh_ini 之间的时间差分成每个 1 小时的块,并计算每个块中的分钟数。
目的是计算所有事件和每个区块的总时间(例如,00:00 到 01:00 之间的区块等)。
我对 R 很陌生,我不确定我是否可以使用现有函数来真正做到这一点,或者我是否应该编写一些代码(使用循环?)来做到这一点。
我期望的结果如下(来自 Excel)。第 2 排从 3:00 到 4:00 的间隔仅计算 42 分 37 秒。
0:00 1:00 2:00 3:00 4:00
07/12/2015 1:00:00 07/12/2015 3:00:00 0 1 1 0 0
07/12/2015 0:00:00 07/12/2015 3:42:37 1 1 1 0,710277778 0
如果我只有 2 行,就像示例一样,每个块的结果总事件时间(以小时为单位)将是:
0:00 1:00 2:00 3:00 4:00
1 2 2 0,710277778 0
我想知道分解时差是否是创建这些块的关键,但我已经尝试过在 24 个块中创建 1 天的系数并以相同的方式分解 difftime,但我不太知道该怎么做接下来做。无论如何,我不确定是否有任何其他方法可以获得不涉及分解 difftime 的结果。
我们将不胜感激!
【问题讨论】:
-
你的活动会在午夜结束吗?还是它们总是在一天之内被包含在内?
-
你的日期很重要,还是你只对比较时间感兴趣?如果您的日期很重要,那么每个时间段是否与特定日期和时间相关联?
-
不,日期实际上并不重要,确实。这是我真正必须管理的时代。这些数据来自一个可能汇总不同日期事件的每日文件,但我应该只使用文件日期减去 1 天的数据。
标签: r