使用dplyr包中的group_by()和summarise()函数进行分组和汇总操作来代替rowwise()
示例代码:
原始数据:
library(dplyr)
df <- data.frame(
A = rep(1:5, 5),
B = sample(1:25, 25, replace = TRUE),
C = sample(c("a", "b", "c"), 25, replace = TRUE),
D = rnorm(25)
)
使用rowwise()函数的代码:
df %>%
rowwise() %>%
mutate(E = sum(A, B, D))
使用group_by()和summarise()函数的代码:
df %>%
group_by(A, B, C) %>%
summarise(E = sum(D))
这两段代码的输出结果是一样的,但是第二段代码不需要使用rowwise()函数,所以性能更好。