2016-12-30 14 views
-1

[R]スタジオで新しくヘルプを丁寧にリクエストしています。秒単位のサンプリング間隔を30秒間隔に集約し、POSIXct

目標:1秒間隔で収集したデータを30秒間隔で崩壊させ、それに続いて各変数の「平均」を関連づけたいと思います。ここで

は私のデータは次のようになります。

line datetime  AA BB CC 
1 2016-06-27 14:13:16 18 1 50.5 
2 2016-06-27 14:13:46 19 1 52.8 

(ここでは、変数のAA、BB、およびCCを平均した):私は見てみたいと思い何

line datetime   AA BB CC 
1 2016-06-27 14:13:16 6 0 0.0 
2 2016-06-27 14:13:17 10 0 48.6 
3 2016-06-27 14:13:18 7 0 52.0 
4 2016-06-27 14:13:19 13 0 54.4 
5 2016-06-27 14:13:20 16 0 60.8 
6 2016-06-27 14:13:21 6 0 65.5 
7 2016-06-27 14:13:22 6 0 47.5 
8 2016-06-27 14:13:23 6 1 46.8 
9 2016-06-27 14:13:24 4 1 55.5 
10 2016-06-27 14:13:25 4 1 51.1 
11 2016-06-27 14:13:26 4 1 53.4 

これです。

これに似た質問がありましたが、私の小さなコーディングとプログラミングの知識で作業するための基礎を私に与えるのに似ているものはありません。私は、可能性のある基本的なソリューションと無駄なパッケージソリューションとの間を行き来してきました。これは、主に言語/構文の実装がまだ私にとっては外国語であるためです。

+0

あなたは答えを試しましたか?それは機能しましたか? –

答えて

0

私はあなたがこれを試してみたいと思う:(ベース・ソリューション)

etw 
       datetime AA BB CC 
1 2016-06-27 14:13:16 6 0 0.0 
2 2016-06-27 14:13:17 10 0 48.6 
3 2016-06-27 14:13:18 7 0 52.0 
4 2016-06-27 14:13:19 13 0 54.4 
5 2016-06-27 14:13:20 16 0 60.8 
6 2016-06-27 14:13:21 6 0 65.5 
7 2016-06-27 14:13:22 6 0 47.5 
8 2016-06-27 14:13:23 6 1 46.8 
9 2016-06-27 14:13:24 4 1 55.5 
10 2016-06-27 14:13:25 4 1 51.1 
11 2016-06-27 14:13:26 4 1 53.4 

aggregate(x = etw, by = list(cut(etw$datetime,breaks = "10 sec")), FUN=mean) 

       Group.1   datetime AA BB CC 
1 2016-06-27 14:13:16 2016-06-27 14:13:20 7.8 0.3 48.22 
2 2016-06-27 14:13:26 2016-06-27 14:13:26 4.0 1.0 53.40 

は、あなたが30秒に10秒の一部を変更することができます。ただし、注意してください:breaks = "10 sec"は、最小時間から範囲を10秒スライスにカットします。あなたのケースでは単一スライスになります。

あなたは手動でも、これは私見あなたが取得したいまさにではなく、

breaks = seq.POSIXt(from = as.POSIXct("2016-06-27 14:13:00"),to = as.POSIXct("2016-06-27 14:14:00"),by="10 sec"))

aggregate(x = etw,FUN=mean, by = list(cut(etw$datetime,breaks = seq.POSIXt(from = as.POSIXct("2016-06-27 14:13:00"),to = as.POSIXct("2016-06-27 14:14:00"),by="10 sec")))) 
       Group.1   datetime  AA  BB  CC 
1 2016-06-27 14:13:10 2016-06-27 14:13:17 9.000000 0.0000000 38.75000 
2 2016-06-27 14:13:20 2016-06-27 14:13:23 6.571429 0.5714286 54.37143 

を使用して範囲を定義することができます - あなたのサンプルデータは、所望の出力に対応していない:)

関連する問題