在 python pandas dataFrame 中,我想创建多列值的单个 json 列。
假设以下数据帧:
示例:
| - | col1 | col2 | col3 | col4|
| 1 | abc | def | ghi | 8 |
| 2 | xab | xcd | xef | 9 |
这就是我想要的结果。
| |col1 | json_col|br
|1 | abc | {"col2":"def","col3":"ghi","col4":8}|
|2 | xab | {"col2":"xcd","col3":"xef","col4":9}|
如何创建选定列的单列(json 类型)?
最佳答案
您可以使用 apply
与 to_json
, 最后通过 drop
删除列:
cols = ['col2','col3','col4']
df['json_col'] = df[cols].apply(lambda x: x.to_json(), axis=1)
df = df.drop(cols, axis=1)
print (df)
- col1 json_col
0 1 abc {"col2":"def","col3":"ghi","col4":8}
1 2 xab {"col2":"xcd","col3":"xef","col4":9}
关于python pandas dataFrame 创建多列值的单个 json 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44413682/