[英]Summarize values between two rows, according to criteria
我有這個 dataframe
其中“年齡”列中的值需要根據整個大小范圍進行匯總,即現在數據框如下所示:
Size Age 1 Age 2 Age 3
[1] 8 2 8 5
[2] 8.5 4 7 9
[3] 9 1 11 45
[4] 9.5 3 2 0
但我想要這個
Size Age 1 Age 2 Age 3
[1+2] 8 6 15 16
[3+4] 9 4 13 45
R用哪個function比較好?
我想但我沒有嘗試,將rowwise()與mutate()一起使用,但我不知道如何設置條件。
預先感謝您的幫助:)
您可以使用dplyr
庫輕松完成此操作。 (如果你還沒有的話,你可能需要安裝install.packages("dplyr")
。)
使用 dplyr 函數,我們可以按新的分組列size
進行分組,用向下舍入到最接近整數的值替換現有的size
列。 然后我們只summarise
across
以"Age"
starts_with
的列並對值sum
。
require(dplyr)
my_df |>
group_by(size = floor(size)) |>
summarise(
across(starts_with("Age"), sum)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.