データセットの特定の列を、異なるデバイスのデータの日々のサンプルを使って2つのキー(時間と係数1)でグループ化された時系列列に変換しようとしていますdata.tableのts関数内でstartとendを定義するgroupby
私が持っているデータは、この
date hour factor1 volume wkday
1: 2015-10-01 AM 11011 530 Thursday
2: 2015-10-01 AM 11012 1535 Thursday
3: 2015-10-01 AM 11021 191 Thursday
4: 2015-10-01 AM 11131 1108 Thursday
5: 2015-10-01 AM 11132 1518 Thursday
6: 2015-10-01 AM 11141 508 Thursday
日は2015年10月1日から2017年8月1日に実行されるように、時間は、以下の2つのレベル(AMとPM)が、因数1は、多くのレベルと平日を持っているものです今のところ必要ありません。 timeseriesデータに変換したい列はボリュームです。
私はこれを行う試してみました:
table_11011 = table[factor1 == '11011']
table_11011_am = table_11011[hour == 'AM']
table_11011_am[, vol_ts := ts(table_11011_am[,volume],
start = decimal_date(table_11011_am[, date][1]),
frequency = 365)]
したがって、私は所望の出力を得るが、私はすべての異なる因数1レベルと時間のためにこれを要約しようとしたとき、私は入力にどのように正しい開始と終了を知りません日付。今まで私はこれをやっていましたが、それは悪い結果を与えるようです。
table[, vol_ts := ts(volume,
start = decimal_date(table[, date][1]), frequency = 365), by = c('factor1', 'hour')]
助けてください。
これは正確に私が探していた答えではありませんが、非常に役に立ちました。私が探しているのは、同じデータフレーム内で、ある意味で新しい列のTSを定義することですが、それぞれのfactor1とtimeの長さが異なるため、それぞれのTSは異なります...私は、自分自身を説明しています。とにかく、ありがとうございました。 –