Skip to main content
 首页 » 编程设计

python pandas dataFrame 创建多列值的单个 json 列

2025年05月04日22Leo_wl

在 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}