Следующий набор данных представляет мои ситуации:
library(dplyr)
df <- data_frame(
G1 = rep(1:2, each = 10),
G2 = rep(1:10, 2),
C1 = rnorm(20),
C2 = rnorm(20),
C3 = rnorm(20),
C4 = rnorm(20)
)
Я хочу выполнить следующую операцию,
df %>%
group_by(G1, G2) %>%
mutate(
C1 = C1 - C2,
C2 = C2 - C2,
C3 = C3 - C2,
C4 = C4 - C2
)
Если есть только 4 столбца (C1, C2, C3 и C4), я могу применить вышеуказанное решение. Однако у меня много столбцов, и для каждого из них мне нужно выполнить одну и ту же операцию. Есть ли какое-нибудь краткое и простое решение, которое могло бы распространить эту проблему на многие столбцы?