0
mydf看起來像這樣;如果不符合條件,則使用聚合返回零
id<-c(1,1,2,2,3,3,4,4)
type<-c("a","a","a","b","a","a","a","b")
total<-c(1.1,1.2,2.1,2.3,3.4,3.6,4.2,4.3)
mydf<-data.frame(id,type,total)
我想使用聚合總和type = b的總數,但產生一個具有所有id號的df。所以寧可使用
mydf.ag<-aggregate(total~id, sum, data=mydf)
我想使用類似
mydf.ag<-aggregate(total~id, sum, data=mydf[mydf$type=="b",])
但這僅返回類型= B的實例的DF。理想我想mydf.ag包括對ID的1和3個零,從而mydf.ag應該像
mydf.ag<-data.frame(id=c(1,2,3,4), total=c(0,2.3,0,4.3))
使用聚合將是理想的,但任何其他建議,歡迎!
'聚合+合併「可能是需要的。 'merge(data.frame(id = unique(mydf $ id)),aggregate(total_id,sum,data = mydf [mydf $ type =='b',]),all = TRUE)'並且改變NA到0後 – akrun