【发布时间】:2011-04-28 04:55:59
【问题描述】:
我有一个包含多列的 data.frame。其中一列是时间,因此是非递减的。其余列包含在 data.frame 的某一行中指定的时间给定的时间记录的观察结果。
我想选择一个时间窗口,例如“x”秒,然后计算该窗口的同一 data.frame 中的其他一些列中条目的平均值(或任何函数)。
当然,由于它是基于时间的平均值,因此窗口中的条目数可能会因数据而异。这是因为属于某个时间窗口的行数可能会有所不同。
我使用自定义函数完成了这项工作,该函数在 data.frame 中创建了一个新列。新列为时间窗口中的所有条目分配一个编号。该数字在所有时间窗口中都是唯一的。这实质上是根据时间窗口将数据分组。然后我使用 R 的“聚合”函数来计算平均值。
我只是想知道是否存在可以根据时间间隔进行分组的现有 R 函数,或者是否有更好(更清洁)的方法来做到这一点。
【问题讨论】:
-
能否提供一些示例数据?最佳解决方案将取决于您的数据是什么样的。
-
我想知道这是否可能,因为我自己做,但它非常消耗 CPU,所以我不知道也许我必须将窗口设置为更大的值,无论如何 TY ;)