You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将规范化嵌套JSON列追加至无共同键的原DataFrame?

解决方法

原始DataFrame(df)和JSON规范化后的DataFrame(df1)索引完全对齐,不需要额外连接列,直接按列拼接即可实现需求。

完整代码

import pandas as pd

df = pd.DataFrame({
    "json": [
        {'foo': {'foo_1': {'foo_1_1': 1.0, 'foo_1_2': 'foo'}, 'foo_2': {'foo_2_1': 1.0, 'foo_2_2': 'moo'}}},
        {'foo': {'foo_1': {'foo_1_1': 1.0, 'foo_1_2': 'foo'}, 'foo_2': {'foo_2_1': 1, 'foo_2_2': 'moo'}}}
    ],
    "id": [1,1],
    "label": ['foo', 'moo']
})
df1 = pd.json_normalize(df['json'])

# 移除原始json列后按列拼接
result = pd.concat([df.drop('json', axis=1), df1], axis=1)
print(result)

输出结果

id label  foo.foo_1.foo_1_1 foo.foo_1.foo_1_2  foo.foo_2.foo_2_1 foo.foo_2.foo_2_2
0   1   foo                1.0               foo                1.0               moo
1   1   moo                1.0               foo                1.0               moo

关键说明

  • pd.concat([...], axis=1):指定按列方向拼接数据,因两个DataFrame索引完全匹配,会自动将每行数据一一对应。
  • df.drop('json', axis=1):移除原始DataFrame中的json列,避免结果保留冗余的原始JSON数据。

内容的提问来源于stack exchange,提问作者Blob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 19:55:15