平均函数产生相同的结果

时间:2017-07-25 16:55:45

标签: r dplyr

平均函数表现得很奇怪,它不断产生0.3880952

H10 <- H10 %>% 
  rowwise() %>% 
  mutate(t10dv = mean(c(fd$DV1_C, fd$DV2_C, 
                        fd$DV3_C, fd$DV4_C), 
         na.rm = TRUE))

head(H10)

            DV1_C           DV2_C         DV3_C           DV4_C     t10dv
            <int>           <int>           <int>           <int>     <dbl>
1               1               0               0               1 0.3880952
2              -1               0               2              -1 0.3880952
3               0               0               0               0 0.3880952
4               0               2               1               1 0.3880952
5              -1              -1              -1              -2 0.3880952
6              -2               0               0               0 0.3880952

2 个答案:

答案 0 :(得分:2)

你应该做的只是:

H10$t10dv <- rowMeans(H10[c("DV1_C", "DV2_C", "DV3_C", "DV4_C")])

答案 1 :(得分:0)

此处,您的mutate调用计算四列(mutate(x = mean(fd$DV1_C), y = mean(fd$DV2_C), ... etc. 的串联的平均值。

如果您需要计算每列的平均值,则需要进行4次调用。

{{1}}

最佳

科林