おそらく私は何か非常にシンプルな質問をしていますが、私はRで新しく、フォーラムではこれと似たようなものは実際に見つけられませんでした。連続時間の長さに基づいてデータを分類する
私はこのようになり、データフレームを持っている:
bigDData.dt bigDData.a_temp bigDData.diff bigDData.V33
3148 2009-03-31 09:50:00 8.45 6.071806 yes
3149 2009-03-31 09:55:00 9.31 6.802639 yes
3150 2009-03-31 10:00:00 10.55 7.898750 yes
3151 2009-03-31 10:05:00 11.16 8.357361 yes
3152 2009-03-31 10:10:00 11.37 8.413889 yes
3153 2009-03-31 10:15:00 11.51 8.398750 yes
3154 2009-03-31 10:20:00 11.77 8.499306 yes
3155 2009-03-31 10:25:00 12.42 8.979583 yes
3156 2009-03-31 10:30:00 12.76 9.144722 yes
3412 2009-04-01 07:50:00 7.33 6.233472 yes
3413 2009-04-01 07:55:00 7.65 6.455972 yes
3414 2009-04-01 08:00:00 7.97 6.676250 yes
3415 2009-04-01 08:05:00 8.12 6.724583 yes
3416 2009-04-01 08:10:00 8.40 6.899028 yes
私は連続したデータの長さを知ることにintrestedてよ。たとえば、2009-04-01のデータの所要時間は20分であることを知りたいと思います。次に、連続するデータの長さに基づいてデータを分類したいと思います。私はfor
とループを試しましたが、内部にはif
という条件がありましたが、それを良い方法で公式化することはできません。たぶん、これを行うことができるRパッケージ/機能はありますか?あるいは、あなたの誰かが、ループを適切な方法で書く方法を考えているのでしょうか?
ありがとうございました!
library(dplyr); library(padr)
df %>% thicken("day", col = "day") %>%
group_by(day) %>%
summarise(duration = max(bigDData.dt) - min(bigDData.dt))
これはあなたのコラムbigDData.dt
がクラスPOSIXct
またはPOSIXlt
であることを前提としていますdf
がデータフレームであるpadr
の助けを借り、これは次のようになりdplyr
パッケージと
希望する出力は何ですか? – lukeA