データは0.1秒間隔または10秒間隔で1秒間表示されます 24 * 60 * 60 * 10に基づいて1日に864000行。時間ステップ0.1秒〜30分(UTC小数点時間)
私のデータに列の平均値(風速とその他の変数はここには表示されていません)を0.1秒の時間ステップから30分に集計して求めます。だから、データは、(1日の)48本のラインに864000行から集約されます
入力:
tms Hr Min Sec Wind speed
7/13/2014 0:00 0 0 0 3.45
7/13/2014 0:00 0 0 0.1 52.34
7/13/2014 0:00 0 0 0.2 1.23
7/13/2014 0:00 0 0 0.3 4.3
7/13/2014 0:00 0 0 0.4 1.34
7/13/2014 0:00 0 0 0.5 3.6
出力は、私が見てみたい:時給平均ため
Year Month Day Hr Wind speed
7/13/2014 7 13 0 21.92
7/13/2014 7 13 0.5 29.38
7/13/2014 7 13 1 24.18
7/13/2014 7 13 1.5 1.70
7/13/2014 7 13 2 1.80
私のコードを、私はしたいです(1時間ではなく)30分までにデータを集計するように変更します。ここでdat
はtms
列のないデータなので、日付列を追加しました。
library(data.table)
library(xts)
dat <- data.table(dat)
tms <- as.POSIXct(seq(0,24*(60*60*10)-1,by=1),origin="2014-07-13",tz="UTC")
xts.ts <- data.frame(xts(dat,tms))
は今、私は私のデータに
Aut <- data.frame(tms,xts.ts, check.names=FALSE, row.names=NULL)
mean2 <- aggregate(Aut,
list(hour=cut(as.POSIXct(Aut$tms), "hour")),
mean)
をtms
列を追加しました。しかし、これはでも時給を修正ません。私は自分のデータの平均を30分もしたい。助言がありますか?
出力が欲しいものは私には分かりません。 xtsでは時間による集計は簡単ですが、再現可能な入力( 'dat'は定義されていません)または期待する出力の例を提供していません。それらの2つのものを提供すれば、おそらくいくつかの回答が得られます。 –
私はそれを編集しましたが、おそらくフォーマットが必要です – Wisconsin
@JoshuaUlrich私はそれを編集して出力を提供しましたが、フォーマットに何が起こったのかは分かりません。私は0.1秒の時間ステップから30分(0.5時間)までの平均値を求めています。データを864000行から48行に1日換算すると、 – Wisconsin