Database
[{"pId":12345,"charges":{"key1":"10.0,11.0,12.0,13.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0,10.0","key2":"22.5%,12.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%,22.5%","key3":"271.95,371.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,271.95,394.45,271.95,394.45"}}]
Query
db.collection.aggregate([{"$set":{"charges":{$objectToArray:"$charges"}}},{"$set":{"charges":{$map:{input:"$charges",in:{k:"$$this.k",v:{$split:["$$this.v",","]}}}}}},{$set:{charges:{$map:{input:"$charges",in:{k:"$$this.k",v:{"$trim":{"input":{$reduce:{input:{$map:{input:[1,2],as:"i",in:{$arrayElemAt:["$$this.v","$$i"]}}},initialValue:"",in:{$concat:["$$value",",","$$this"]}}},"chars":","}}}}}}},{$set:{charges:{$arrayToObject:"$charges"}}}])