DataFrame转换为JSON格式,不带列名

dy1byipe  于 2023-06-25  发布在  其他
关注(0)|答案(1)|浏览(161)

我有一个如下格式的数据集

Parameter    Value    Col3
A              1.0     2.0
B              1.0     2.5
dx             0.2     1.0

我使用Python脚本将输出保存为下面给出的json格式

#foo.py

import pandas
import json
#..

df.to_json('foo.json'), orient='records', lines = True, indent=1)`

输出:

{
  "Parameter":"A",
  "Value":1.0,
  "Col3":2.0, 
 }

 {
  "Parameter":"B",
  "Value":1.0,
  "Col3" : 2.5,
 }

 {
  "Parameter":"dx",
  "Value":0.2,
  "Col3" : 2.5,
 }

我更喜欢json格式像这样

{
        "A"    : [1.0, 2.0]  
        "B"    : [1.0, 2.5]
        "dx"    :[0.2, 1.0]
}

有人能建议如何获得所需的输出格式吗?考虑到我在不同的数据集中有不同的列名和列数。

bfhwhh0e

bfhwhh0e1#

首先创建Series

df.set_index('Parameter')['Value'].to_json('foo.json', indent=1)

{
 "A":1.0,
 "B":1.0,
 "dx":0.2
}

编辑:如果需要处理多列:

df.set_index('Parameter').agg(list, axis=1).to_json('foo.json', indent=1)

如果需要,按位置设置第一列:

df.set_index(df.columns[0]).agg(list, axis=1).to_json('foo.json', indent=1)

相关问题