[英]Dplyr: group_by and operations within groups
請考慮以下內容
df <- structure(list(reporter = structure(c(1L, 1L, 2L, 2L, 3L, 3L), .Label = c("NZL",
"SEN", "USA"), class = "factor"), partner = structure(c(1L, 2L,
1L, 2L, 1L, 2L), .Label = c("EUN", "WLD"), class = "factor"),
number_ntm = c(389, 20874, 0, 3933, 4, 30368)), row.names = c(NA,
-6L), class = c("tbl_df", "tbl", "data.frame"))
看起來像這樣
# A tibble: 6 x 3
reporter partner number_ntm
<fct> <fct> <dbl>
1 NZL EUN 389
2 NZL WLD 20874
3 SEN EUN 0
4 SEN WLD 3933
5 USA EUN 4
6 USA WLD 30368
我要執行以下操作:按報告者分組,並在每個組中用合作伙伴EUN划分number_ntm除以合作伙伴WLD划分number_ntm。 我想要一個非常通用的dplyr解決方案,並且在合作伙伴結構包含一些我不想包括的額外因素時也可以使用。 任何建議表示贊賞
您可以按照akrun的建議進行操作,但是可以指定伙伴,而不要使用first和last。
df1<-df %>%
group_by(reporter) %>%
mutate(new = number_ntm[partner=="EUN"]/number_ntm[partner=="WLD"])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.