给定除最后一列之外的所有列中都包含数值的数据框,如何计算该行的平均值?
在此示例中,我使用了所有列,包括我想省略的name
列。
df <- as.data.frame(matrix(1:40, ncol=10)) %>%
mutate(name=LETTERS[1:4]) %>%
mutate(mean=rowMeans(.))
所需的数据帧输出:
V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 mean name
1 1 5 9 13 17 21 25 29 33 37 19 A
2 2 6 10 14 18 22 26 30 34 38 20 B
3 3 7 11 15 19 23 27 31 35 39 21 C
4 4 8 12 16 20 24 28 32 36 40 22 D
答案 0 :(得分:12)
你可以尝试:
df %>%
mutate(mean = select(., -matches("name")) %>% rowMeans(.))
答案 1 :(得分:1)
在您的设置中,您可以使用
df <- as.data.frame(matrix(1:40, ncol=10)) %>%
mutate(name=LETTERS[1:4]) %>%
mutate(mean=rowMeans(.[,1:10]))