好的,接下来是第二个 R 问题。
我的数据:
Timestamp St_01 St_02 ...
1 2008-02-08 00:00:00 26.020 25.840 ...
2 2008-02-08 00:10:00 25.985 25.790 ...
3 2008-02-08 00:20:00 25.930 25.765 ...
4 2008-02-08 00:30:00 25.925 25.730 ...
5 2008-02-08 00:40:00 25.975 25.695 ...
...
基本上通常我会使用ddply
和的组合summarize
来计算合奏(例如全年每小时的平均值)。
在上述情况下,我将创建一个类别,例如小时(例如strptime(data$Timestamp,"%H") -> data$hour
,然后在 中使用该类别ddply
,例如ddply(data,"hour", summarize, St_01=mean(St_01), St_02=mean(St_02)...)
按每个列的类别进行平均。
但这是它变得粘稠的地方。我有 40 多列要处理,我不准备将它们一一键入作为summarize
函数的参数。我曾经在 shell 中编写一个循环来生成这段代码,但这不是程序员解决问题的方式吗?
所以祈祷告诉,有没有人有更好的方法来实现相同的结果,但击键次数更少?