我之前發佈了一個關於該主題的問題,但我認爲它還不夠清楚。抱歉。所以,這是第二次嘗試。計算值的子集的後續行的總和
我有不同的個人在不同時間的牛奶消耗量(體積)的數據。
individual <- c(rep("A", 7), rep("B", 6))
time <- c(0, 12, 20, 26, 32, 36, 50, 0, 10, 21, 24, 36, 60)
volume <- c(0.3, 0.2, 0.1, 0.4, 0.3, 0.1, 0.2, 0.2, 0.4, 0.4, 0.3, 0.2, 0.1)
df <- data.frame(individual, time, volume)
所以,我想知道牛奶攝入後24小時內消耗了多少牛奶。例如,在時間0小時(df中的第一行),個人A喝了0.3L牛奶,然後在時間12時喝了額外的0.2L,在時間20時喝了0.1L,這在24小時期間總共給出了0.6L的飲用量在牛奶攝入之後。
欲計算此爲每一行的每個單獨的和所希望的輸出將是:
res_volume <- c(0.6, 1.1, 0.9, 1.0, "NA", "NA", "NA", 1.3, 1.1, 0.9, 0.5, 0.3, "NA")
df2 <- data.frame(df, res_volume)
「NA」 s爲有,因爲沒有足夠的數據來覆蓋所述牛奶攝入後24小時(該個人的最後一行與給定行之間的時間差小於24小時)。
任何想法,我怎麼能實現這一點?你的答案真的很感激。
您似乎有一個矩陣而不是數據框。另外,這些日期的起源是什麼? – 2014-08-28 17:36:13
@Joanie Van De Walle如果您缺少數值,請不要使用「NA」。將該列轉換爲字符。 – akrun 2014-08-28 17:41:42
同意。在我的情況下,用NA替換0仍然有效,所以我改變了它。 – 2014-08-28 17:44:49