【问题标题】:Customising pandas dataframe to json将熊猫数据框自定义为 json
【发布时间】:2023-04-03 14:01:01
【问题描述】:

我有一个如下的数据框 df

A B C    
1 2 3   
a b c   

我需要把它转换成json如下:

'{"data" :[  
{'type':'df',
 'column_name':'A',
'values':['1','a'] },  
{'type':'df',
 'column_name':'B',
'values':['2','b'] },  
{'type':'df',
 'column_name':'C',
'values':['3','c'] }
] }'   

我怎样才能轻松做到?

【问题讨论】:

  • 你能展示你到目前为止的努力吗?
  • 我使用字符串连接实现了它,这是一种典型的方法,您只需根据需要组合字符串。我想知道是否有更好的方法或我可以使用的内置函数。

标签: python json pandas


【解决方案1】:

您可以遍历数据框并将值添加到您自己的自定义字典中:

from collections import defaultdict
import numpy as np
import pandas as pd

d = defaultdict(list)

for column in df.columns:
    d['data'].append(
        {'type' : 'df',
        'column_name' : column,
        'values' : df[column].to_numpy() }
    )

print(dict(d))
out:
    {'data': [{'type': 'df',
   'column_name': 'A',
   'values': array(['1', 'a'], dtype=object)},
  {'type': 'df',
   'column_name': 'B',
   'values': array(['2', 'b'], dtype=object)},
  {'type': 'df',
   'column_name': 'C',
   'values': array(['3', 'c'], dtype=object)}]}

【讨论】:

    猜你喜欢
    • 2021-12-23
    • 2013-10-12
    • 2021-10-14
    • 1970-01-01
    • 2017-05-27
    • 2021-08-21
    • 2021-11-11
    • 1970-01-01
    相关资源
    最近更新 更多