Database

db={"members":[{name:"Joe",hobby:"Food"},{name:"Lyn",hobby:"Food"},{name:"Rex",hobby:"Play"},{name:"Rex",hobby:"Shop"}]}

Query

db.members.aggregate([{$skip:1},{$limit:2},{$lookup:{from:"members",let:{name:"$name"},pipeline:[{$match:{$expr:{$eq:["$name","$$name"]}}},{$count:"count"}],as:"nameCount"}},{$unwind:"$nameCount"},{$addFields:{nameCount:"$nameCount.count"}},{$lookup:{from:"members",let:{hobby:"$hobby"},pipeline:[{$match:{$expr:{$eq:["$hobby","$$hobby"]}}},{$count:"count"}],as:"hobbyCount"}},{$unwind:"$hobbyCount"},{$addFields:{hobbyCount:"$hobbyCount.count"}}])

Result