【问题标题】:From pandas to Json with keys从熊猫到带钥匙的 Json
【发布时间】:2017-04-26 15:25:42
【问题描述】:

我有一个 11 行 1 列的 Dataframe df。在每一行中,我都有一个数组,我将其转换为 json,但为数组中的每个条目分配一个键。

例如,

                                                   0

 0     [1.234,1.234,2.1123,4.32212,1.2231,2.55323,1.4421]
 1     [2.21,1.234,1.31,3.121,2.22,2.32322,0.8873]

上面的DataFrame应该变成同一个DataFrame,但是entry中有json数据:

                                                      0

 0     {"0":1.234,"1":1.234,"2":2.1123,"3":4.32212,"4"1.2231,"5"2.55323,"6": 
        1.4421}
 1   {"0":2.21,"1":1.234,"2":1.31,"3":3.121,"4":2.22,"5":2.32322,"6":0.8873}

提前致谢。

【问题讨论】:

    标签: arrays pandas dataframe to-json


    【解决方案1】:

    使用apply方法循环遍历列单元格;对于每个项目(列表),使用enumerate 添加索引(键),然后将其转换为字典:

    df['0'].apply(lambda lst: dict(enumerate(lst)))
    
    #0    {0: 1.234, 1: 1.234, 2: 2.1123, 3: 4.32212, 4:...
    #1    {0: 2.21, 1: 1.234, 2: 1.31, 3: 3.121, 4: 2.22...
    #Name: 0, dtype: object
    

    【讨论】:

    • 如果要修改原始数据框df['0'] = df['0'].apply(lambda lst: dict(enumerate(lst))),需要将结果赋值回去。
    • 完美,太棒了。
    猜你喜欢
    • 2019-07-22
    • 2021-05-15
    • 2021-02-25
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 2022-07-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多