生成一些示例data
site<- c(12,12,12,12,45,45,45,45)
horizon<-c('A','A','B','C','A','A','B','C')
value1<- c(19,14,3,2,18,19,4,5)
value2<- c(NA,NA,3,2,NA,NA,4,5)
data<-data.frame(site,horizon,value1,value2)
说我使用聚合函数按站点和地平线总结值1
aggregate(value1~site+horizon,data=data,FUN=mean)
R打印:
site horizon value
1 12 A 16.5
2 45 A 18.5
3 12 B 3.0
4 45 B 4.0
5 12 C 2.0
6 45 C 5.0
但是,如果我按两个向量进行聚合,则会删除所有A视野,因为它们没有value2
的数据
aggregate(.~site + horizon,data=data,FUN=mean)
site horizon value1 value2
1 12 B 3 3
2 45 B 4 4
3 12 C 2 2
4 45 C 5 5
我希望这会从我的第一次聚合调用生成输出,其中value2
的附加列包含A视野的NA条目。
答案 0 :(得分:7)
aggregate(.~site + horizon,data=data,FUN=mean, na.action=na.pass)