Database

[{name:"John",city:"New York",gender:"Male"},{name:"George",city:"New York",gender:"Male"},{name:"Jake",city:"New York",gender:"Male"},{name:"Boyle",city:"New York",gender:"Male"},{name:"Clarrisa",city:"New York",gender:"Female"},{name:"Emily",city:"New York",gender:"Female"},]

Query

db.collection.aggregate([{$group:{_id:"$city",Male:{$sum:{$cond:[{$eq:["$gender","Male"]},1,0]}},Female:{$sum:{$cond:[{$eq:["$gender","Female"]},1,0]}}}},{$project:{Female:1,Male:1,city:"$_id",_id:0}}])

Result