Database

[{"_id":1,"os_name":"android"},{"_id":2,"os_name":"android"},{"_id":3,"os_name":"ios"},{"_id":4,"os_name":"ios"},{"_id":5,"os_name":"android"},{"_id":6,"os_name":"android"}]

Query

db.collection.aggregate([{$group:{_id:null,root:{$push:"$$ROOT"}}},{$project:{_id:0,count:{$size:"$root"},by_os:{$reduce:{input:"$root",initialValue:{ios:0,android:0},in:{$mergeObjects:["$$value",{$cond:[{$eq:["$$this.os_name","ios"]},{ios:{$add:["$$value.ios",1]}},{android:{$add:["$$value.android",1]}}]}]}}}}}])

Result