na.rm = TRUE和na.action = na.omit在aggregate()

时间:2016-01-14 17:45:55

标签: r aggregate-functions na

我随机有一个NA值的数据集,当我使用它时:

aggregate(y2_predict[,15:17], list(Name=y2_predict$Name), mean, na.action = na.omit)

它提供了这样的东西:

Name var1 Var2 Var3 
1999  NA    NA
2000 NA NA
2001 NA NA

但如果我使用它:

aggregate(y2_predict[,15:17], list(Name=y2_predict$Name), mean, na.rm = TRUE)

然后它会返回类似这样的内容

Name var1 Var2 Var3 
1999  2    3.5
2000 5.2 6
2001 7 8

显然第一个不起作用,第二个起作用。但我一直认为它们大致相同 - 忽略NAs或删除NAs--在按组计算时,它们都不应包含NA。那为什么第一个不工作呢?我只是确保我没有遗漏任何东西而且我正确地做事。感谢。

0 个答案:

没有答案