gpt4 book ai didi

r - 如何使用 dplyr 获得两列的平均值?

转载 作者:行者123 更新时间:2023-12-02 23:21:30 26 4
gpt4 key购买 nike

如何使用dplyr获取数据表两列的平均值?例如,如果我的数据如下:

dt <- data.table(A=1:5, B=c(1,4,NA,6,8))

我想创建一个新列“Avg”,它是每行 A 列和 B 列的平均值:

dt %>% mutate(Avg=mean(c(A, B), na.rm=T))

但是这段代码没有给我正确的结果。这个怎么做?非常感谢。

最佳答案

如果您想使用 dplyr 来实现此目的,我建议使用函数 rowwise():

    R> library(dplyr)
R> dt <- data.table(A=1:5, B=c(1,4,NA,6,8))
R> j <- dt %>% rowwise() %>% mutate(Avg=mean(c(A, B), na.rm=T))
R> j
Source: local data frame [5 x 3]
Groups: <by row>

A B Avg
(int) (dbl) (dbl)
1 1 1 1.0
2 2 4 3.0
3 3 NA 3.0
4 4 6 5.0
5 5 8 6.5

关于r - 如何使用 dplyr 获得两列的平均值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34169190/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com