Database

[{"site":"xyz.com","Reg_NumReviews":{"value1":"194","value53":"3,570"},"Reg_Score":{"value1":"3.24","value53":"1.9"}}]

Query

db.collection.update({"site":"xyz.com"},[{$set:{tmpReviews:{$map:{input:{$objectToArray:"$Reg_NumReviews"},as:"datum",in:{$toLong:{$replaceAll:{input:"$$datum.v",find:",",replacement:""}}}}},tmpScores:{$map:{input:{$objectToArray:"$Reg_Score"},as:"datum",in:{$toDouble:"$$datum.v"}}}}},{"$set":{"Total_reviews":{$sum:"$tmpReviews"},Average_score:{$avg:"$tmpScores"},New_complicated_field:{$divide:[{$sum:{$map:{input:{$zip:{inputs:["$tmpReviews","$tmpScores"]}},as:"zipped",in:{$multiply:[{$arrayElemAt:["$$zipped",0]},{$arrayElemAt:["$$zipped",1]}]}}}},{$sum:"$tmpReviews"}]}}},{$unset:{tmpReviews:1,tmpScores:1}}],{"multi":false,"upsert":false})

Result