Database

[{event:"event_1",attendees:["A","B","C"]},{event:"event_2",attendees:["A","B"]},{event:"event_3",attendees:["A"]}]

Query

db.collection.aggregate([{$addFields:{togetherWith:"$attendees"}},{$unwind:"$attendees"},{$addFields:{togetherWith:{$filter:{input:"$togetherWith",cond:{$ne:["$$this","$attendees"]}}}}},{$unwind:"$togetherWith"},{$group:{_id:"$attendees",togetherWith:{$push:"$togetherWith"},howManyEvents:{$sum:1}}},{$unwind:"$togetherWith"},{$group:{_id:{attendee:"$_id",togetherWith:"$togetherWith"},howManyEvents:{$first:"$howManyEvents"},howManyTimes:{$sum:1}}},{$project:{_id:0,attendee:"$_id.attendee",togetherWith:"$_id.togetherWith",howManyEvents:1,howManyTimes:1}}])

Result