我有类似的数据,我想要与此链接所述的确切结果:如何使用 dplyr 在行组之间进行划分?
然而,与我的数据的唯一区别是,有时“条件”列并不总是有“A”或“B”,因此有时没有分母或分子。
x <- data.frame(
name = rep(letters[1:4], each = 2),
condition = rep(c("A", "B"), times = 4),
value = c(2,10,4,20,8,40,20,100)
)
x = x[-c(4,5),] #this is my dataframe
我想删除并不总是同时具有 A 和 B 的行并继续除法。谁能告诉我如何根据这段代码做到这一点?
x %>%
group_by(name) %>%
summarise(value = value[condition == "B"] / value[condition == "A"])