gpt4 book ai didi

r - 按组取平均值,不包括 NA 值

转载 作者:行者123 更新时间:2023-12-02 04:03:59 25 4
gpt4 key购买 nike

我正在努力寻找可以通过取平均值并忽略 NA 值来聚合我的数据框的东西,但最终结果仍然会显示缺失值。数据表看起来像这样

Guar1   Bucket2 1   2   3   4   Total   Month
10 -10 NA NA NA NA 0 201110
10 -0.2 0 9.87 8.42 0 18.29 201110
10 0 0.81 7.49 3.32 5.92 17.54 201110
10 0.4 0 0 NA 0 0 201110
10 999 0.73 7.57 4.61 0.77 13.68 201110
20 -10 NA NA NA NA 0 201110
20 -0.2 NA NA 100 NA 100 201110
20 0 NA 0 0 0 0 201110
20 0.4 1.39 3.13 14.04 2.98 21.54 201110
20 999 1.38 3.11 17.08 2.97 24.54 201110
999 999 1.06 5.44 8.61 1.52 16.63 201110
10 -10 NA NA NA NA 0 201111
10 -0.2 0 0 8.54 0 8.54 201111
10 0 1.87 6.12 16.6 0 24.59 201111
10 0.4 0 0 0 1.47 1.47 201111
10 999 1.68 5.82 13.15 1.67 22.32 201111
20 -10 NA NA NA NA 0 201111
20 -0.2 NA 0 NA NA 0 201111
20 0 NA NA 0 0 0 201111
20 0.4 2.29 5.38 14.91 14.18 36.76 201111
20 999 2.29 5.35 13.09 14.1 34.83 201111

决赛 table

Guar1   Bucket2 1   2   3   4   Total
10 -10 NA NA NA NA 0
10 -0.2 0 4.935 8.48 0 13.415
10 0 1.34 6.805 9.96 2.96 21.065
10 0.4 0 0 0 0.735 0.735
10 999 1.205 6.695 8.88 1.22 18
20 -10 NA NA NA NA 0
20 -0.2 NA 0 100 NA 50
20 0 NA 0 0 0 0
20 0.4 1.84 4.255 14.475 8.58 29.15
20 999 1.835 4.23 15.085 8.535 29.685
999 999 1.06 5.44 8.61 1.52 16.63

我试过了

aggregate(.~ Guar1+Bucket2, df, mean, na.rm = FALSE)

但它随后排除了最终表中的所有 NA。

如果我将 df 中的所有 NA 值都设置为 0,那么我将不会得到期望的平均值。

我希望有人能帮我解决这个问题。谢谢!

最佳答案

用 dplyr 包检查这个例子

您可以按多个变量进行分组。 dplyr 包非常适合数据编辑总结结束等。

dataFrame <- data.frame(group = c("a","a","a", "b","b","b"), value = c(1,2,NA,NA,NA,3))
library("dplyr")

df <- dataFrame %>%
group_by(group) %>%
summarise(Mean = mean(value, na.rm = T))

输出

# A tibble: 2 × 2
group Mean
<fctr> <dbl>
1 a 1.5
2 b 3.0

关于r - 按组取平均值,不包括 NA 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40425818/

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