我有一个数据框,其中包含几列,例如[名称,电子邮件,国家/地区,城市,类型,时间,x_completions],如下所示:

我想将此数据帧的每一行转换为JSON对象,但将某些列分组为dict并将其称为user_info,例如{ "name": "XYZ", "email": "[email protected]", "country": "USA", "city": "NYC"}

基本上,我想将每一行转换为以下结构的JSON对象:

{ "type":"Login", "user_id":"002203293023", "user_info":{ "name":"XYZ", "email":"[email protected]", "country":"USA", "city":"NYC" }, "other_info":{ "x_completed":"4" }, "time":1562932893}

我不确定如何将列组转换为JSON对象中的字典。关于SO的所有其他类似问题都涉及某种形式的groupby操作,我认为这里不需要。

最佳答案

使用列表推导来遍历数据框中的每一行。

[{
   "type": "Login",
   "user_id": row['user_id'],
   "user_info":{
      "name": row['name'],
      "email": row['email'],
      "country": row['country'],
      "city": row['city']
   },
   "other_info":{
      "x_completed": row['x_completions']
   },
   "time": row['time']
} for _, row in df.iterrows()]

关于python - 将 Pandas DataFrame的每一行转换为嵌套的JSON对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45557289/

10-12 20:12