実験開始時と実験中に行った各温度測定の間の累積時間を計算しようとしています。私の実験には50以上のサンプル(A1、A2、B1、B2など)があり、それぞれのサンプルは異なる時刻に開始されました。各サンプルの合計実験時間を計算する
私は時間を連続変数として扱いたいので、合計時間変数(以下)で示されるように、各一時測定の合計(累積時間数)を計算する必要があります。
各サンプルの開始時間と終了時間をRに伝えずにこれを行う方法はありますか?どのように各温度測定の累積時間を得ることができますか?
データがどのように見えるかの例を以下に示します。
Date Time Sample Temp **Total Time**
2017-06-28 13:58 A1 13.67870139 0
2017-06-29 16:08 A1 13.34256319 (time between 06-28 13:58 and 06-29 16:08)
2017-06-30 07:32 A1 12.84005139 (time between 06-28 13:58 and 06-30 07:32)
2017-06-30 19:14 A1 12.84005139 ect
2017-07-01 07:40 A1 11.83983472
2017-07-01 19:20 A1 11.83983472
2017-07-02 07:53 A1 11.75332292
2017-07-02 19:06 A1 11.75332292
2017-07-03 07:45 A1 11.74469167
2017-07-03 19:04 A1 11.74469167
2017-07-04 08:15 A1 11.45409583
感謝を!
PS-「開始時刻」と「終了時刻」の列がある場合のみを見つけることができるため、何も試していません。私は各サンプルの開始時間colを作成し、rに開始時間と各測定の時間との間の時間差を計算するように依頼することができると思います...私はRを最も早い時間に開始時間colにする方法を知らない各サンプルの測定。私は一日中エクセルでそれをやることができますが、より良い解決策を賭ける必要があります!
は、あなたがしようとしているものを私たちに示すことができました。ここでは、このサイトのための良いスタートリソースhttps://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –
* "Rに開始時間と終了時間を知らせない" *。 ..あなたの例では、 'Date'と' Time'変数で終了時刻を知り、 'lag(Date)'(...)に基づいて開始時刻を推測します。 'lag()'が安全でない場合、答えはほぼ確実です。 "いいえ、Rはサンプルが何回開始されたか知ることができません" :-)それが安全であれば(私の疑惑)、 'Date'と' Time'の2つのフィールドを単一の 'POSIXt'フィールドに変換することをお勧めします。、 'DateTime')、' x < - c(0、diff(DateTime)) 'と' units(a)< - "hours" 'を使用します。 – r2evans
しかし、私は手動で各50サンプルの開始時間を入力する必要がありますか?私 –