【问题标题】:Accessing JSON sub attributes using Pandas from .csv file使用 .csv 文件中的 Pandas 访问 JSON 子属性
【发布时间】:2017-12-21 16:29:01
【问题描述】:

我有这个嵌套的 JSON 数据集,我已使用 pandas 转换为 .csv

[{
        "attribute1": "One",
        "attribute2": "Two",
        "attribute3": [{
            "attribute4": "Four",
            "attribute5": "Five"
        }, {
            "attribute4": "Four",
            "attribute5": "Five"
        }]
    }]

df = pd.DataFrame(data, columns=["attribute1", "attribute2", "attribute3"])
df.to_csv('example.csv')

attribute3 列中的数据仍然是 JSON。如何使用索引访问attribute3 的子属性值,即attribute4attribute5? 例如这样的事情:data[0][2:0] 用于获取第零行、第二列及其子属性为零的数据。

对于如何访问嵌套值,我将不胜感激。我应该展平包含嵌套值的单列吗?我怎样才能做到这一点?

【问题讨论】:

    标签: python json python-3.x pandas


    【解决方案1】:

    使用 json_normalize() 解析原始 JSON (data) 会更容易:

    In [5]: pd.io.json.json_normalize(data, ['attribute3'], ['attribute1','attribute2'])
    Out[5]:
      attribute4 attribute5 attribute1 attribute2
    0       Four       Five        One        Two
    1       Four       Five        One        Two
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-31
      • 1970-01-01
      • 2016-09-11
      • 2022-08-15
      • 1970-01-01
      • 2018-01-15
      • 1970-01-01
      相关资源
      最近更新 更多