同じタイトルの以前の質問をフォローアップすると、長期のサブ 1 時間ごとのデータがあり、さまざまな方法でデータを集計したいと考えています。1 日の時間に基づいて集計したいだけでなく、集計の組み合わせにも基づいて集計したいと考えています。別の例は、週末または平日の毎時です。
以下の例は、私が行っている 2 種類の集計を示しています。ここまでやり遂げました。そのため、2 つの動物園のオブジェクトが完成しました。次にやりたいことは、集計を元のデータにマージして、集計の誤差を比較できるようにすることです。これは私が現時点で立ち往生しているところです。
集計の柔軟性が必要なので、前の質問のソリューションを使用しないことに注意してください。
ここに私がこれまでに試したことを示すスニペットがあります。どんな助けでも大歓迎です。
library(zoo)
Lines <- "Index,light.kw
2013-06-14 13:00:00,3.436
2013-06-14 13:15:00,3.327
2013-06-14 13:30:00,3.319
2013-06-14 13:45:00,3.308
2013-06-14 14:00:00,3.458
2013-06-14 14:15:00,3.452
2013-06-14 14:30:00,3.445
2013-06-14 14:45:00,3.469
2013-06-14 15:00:00,3.468
2013-06-14 15:15:00,3.427
2013-06-14 15:30:00,3.168
2013-06-14 15:45:00,2.383
2013-06-15 13:00:00,0.555
2013-06-15 13:15:00,0.555
2013-06-15 13:30:00,0.555
2013-06-15 13:45:00,0.555
2013-06-15 14:00:00,0.555
2013-06-15 14:15:00,0.555
2013-06-15 14:30:00,0.555
2013-06-15 14:45:00,0.719
2013-06-15 15:00:00,0.976
2013-06-15 15:15:00,0.981
2013-06-15 15:30:00,1.116
2013-06-15 15:45:00,0.59"
con <- textConnection(Lines)
z <- read.zoo(con, header=TRUE, sep=",",
format="%Y-%m-%d %H:%M:%S", FUN=as.POSIXct)
close(con)
index.hourly = format(index(z), "%H")
z.hourly = aggregate(z, index.hourly, mean)
z.hourly
merge(z,z.hourly)
index.dayhour = format(index(z), "%w %H")
z.dayhour = aggregate(z, index.dayhour, mean)
z.dayhour
merge(z,z.dayhour)