我有一个包含 4 列的数据框...日期、小时、位置、值。
我想对数据做的是为每个唯一的日期/小时/位置提供汇总统计信息。这似乎很容易,因为我可以做到
x <- subset(my.df[,4],
my.df[,2]==(some parameter) & my.df[,3]==(another parameter)
)
然后从 x 获取我想要的任何汇总统计信息。然而,棘手的部分是我还想从上述值的每个差异中获取汇总统计信息。因此,例如,我想loc=1
从value
何时开始计算价值的差异loc=2
,hour=1
但在任何一个位置中可能会或可能不会丢失天数。我有一个可能会起作用的想法是重塑my.df
更宽两次。首先使它变宽,timevar=loc
然后用它重塑它,timevar=hour
这样我就可以得到带有 Date、value.1.1、value.1.2 等列的 wide.df,其中第一个整数是 loc,第二个整数是小时,每一行都是唯一的日期。
有没有更直接的做法,不涉及 20 分钟的整形(最初的 df 大约是 9493401 行,有 4 个变量,然后我将它扩展到 720 行,有 14857 列?
@Brandon:这是 str 输出。不过,我还没有尝试过你的建议。
'data.frame': 9493401 obs. of 4 variables:
$ Loc : int 1 1 1 1 1 1 1 1 1 1 ...
$ Date: POSIXct, format: "2010-10-29" "2010-10-29" ...
$ Hour : int 1 2 3 4 5 6 7 8 9 10 ...
$ Value : num 7.63 4.07 4.9 1.61 0.34 -5.23 2.11 2.39 7.2 4.41 ...