使用Python如何将pandas中JSON格式列的元素拆分为多行数据
实现方案
直接用pandas内置的explode和json_normalize组合即可实现需求,代码如下:
import pandas as pd # 假设你从数据库导入的原始DataFrame命名为df # 第一步:将employee info列的列表结构展开为多行 df_exploded = df.explode('employee info', ignore_index=True) # 第二步:把每行的字典格式员工信息拆分为独立的emp_name、emp_id列 df_emp = pd.json_normalize(df_exploded['employee info']) # 第三步:拼接管理者ID和拆分后的员工字段,得到最终结果 final_df = pd.concat([df_exploded[['manager id']], df_emp], axis=1)
如果从数据库导出时employee info列被识别为字符串而非Python列表,需要先做格式转换:
import ast df['employee info'] = df['employee info'].apply(ast.literal_eval)
运行完成后final_df就是你需要的输出格式。
内容的提问来源于stack exchange,提问作者Shay D
相关产品推荐
相关产品推荐

