Database
[{date:"2019-06-12T00:09:03.000Z",actions:{actionDate:"2019-06-12T00:15:25.000Z",data:{users:[[{gender:"Male",age:24},{gender:"Female",age:25}],[{gender:"Male",age:34},{gender:"Male",age:26}],[{gender:"Female",age:19},{gender:"Male",age:21}]]}}}]
Query
db.collection.aggregate([{$addFields:{"users":{$reduce:{input:"$actions.data.users",initialValue:{"Male":[],"Female":[]},in:{Male:{$concatArrays:["$$value.Male",{$filter:{input:"$$this",cond:{$eq:["$$this.gender","Male"]}}}]},Female:{$concatArrays:["$$value.Female",{$filter:{input:"$$this",cond:{$eq:["$$this.gender","Female"]}}}]}}}}}},{$project:{_id:0,date:1,actionDate:"$actions.actionDate",summary:{"countFemale":{$size:"$users.Female"},"meanFemaleAge":{$avg:"$users.Female.age"},"countMale":{$size:"$users.Male"},"meanMaleAge":{$avg:"$users.Male.age"}}}}])