【发布时间】:2022-07-24 01:44:40
【问题描述】:
我看到堆栈溢出中提出的问题列表,涉及以下内容,但从未得到令人满意的答案。我会跟进以下问题Blend of na.omit and na.pass using aggregate?
> test <- data.frame(name = rep(c("A", "B", "C"), each = 4),
var1 = rep(c(1:3, NA), 3),
var2 = 1:12,
var3 = c(rep(NA, 4), 1:8))
> test
name var1 var2 var3
1 A 1 1 NA
2 A 2 2 NA
3 A 3 3 NA
4 A NA 4 NA
5 B 1 5 1
6 B 2 6 2
7 B 3 7 3
8 B NA 8 4
9 C 1 9 5
10 C 2 10 6
11 C 3 11 7
12 C NA 12 8
当我尝试给定的解决方案时,我会尝试找出总和
aggregate(. ~ name, test, FUN = sum, na.action=na.pass, na.rm=TRUE)
该解决方案无法正常工作。因此,它将NA转换为0,因此NA的总和为0。它将其显示为0而不是NaN。
为什么以下对 FUN=sum 不起作用。以及如何使它起作用?
【问题讨论】:
标签: r aggregate plyr summarize