是否创建一个新列,其中包含数据框中列的子集的平均值?

时间:2019-02-20 21:00:05

标签: r dplyr mean mutate

我想创建一个新列,其中包含数据帧每一行中列子集的平均值。

我有一个看起来像这样的数据框:

a b c d e
2 3 4 2 6
3 NA 6 9 0
NA 1 2 3 4
9 7 5 4 NA

我想创建一个新的列(f),其中包含在我的数据框中仅包含列(b,c,e)的子集的行的平均值。我也想删除NA。这样输出将如下所示:

a b c d e f
2 3 4 2 6 4.3
3 NA 6 9 0 3
NA 1 2 3 4 2.3
9 7 5 4 NA 6

我尝试使用mutate和rowMeans,如下所示:

df <- df %>%
mutate(new = rowMeans(subset(df, select = c(b, c, e)), na.rm = TRUE)

但是我收到以下错误消息:

Error in mutate_impl(.data, dots) : Evaluation error: argument "subset" is missing, with no default.

任何输入将不胜感激。

0 个答案:

没有答案