【Python】pandas.DataFrame大写json格式

json的格式如下 
split,样式为 {index -> [index], columns -> [columns], data -> [values]}
records,样式为[{column -> value}, … , {column -> value}]
index ,样式为 {index -> {column -> value}}
columns,样式为 {index -> {column -> value}}
values,数组样式
table,样式为{‘schema’: {schema}, ‘data’: {data}},和records类似
 

样例1:

#将json格式转化为python格式
js = """{"name":"Wes",
"places_lived":["US","Spain","Germany"],
"pet":null,
"siblings":[{"name":"Scott","age":25,"pet":"Zuko"},{"name":"Katie","age":33,"pet":"Cisco"}]
}"""
import json
data = json.loads(js)
print(data)

#将pandas.Dataframe格式输出到json文件
import pandas as pd
ls=[{"name":"Scott","age":25},{"name":"Katie","age":33}]
data = pd.DataFrame(ls,columns=['name','age'])
data.to_json('a.txt',orient='records')

 

样例2:

df = pd.DataFrame([['a', 'b'], ['c', 'd']],
                   index=['row 1', 'row 2'],
                   columns=['col 1', 'col 2'])
###########
split
###########
df.to_json(orient='split')
>'{"columns":["col 1","col 2"],
  "index":["row 1","row 2"],
  "data":[["a","b"],["c","d"]]}'
###########
index
###########
df.to_json(orient='index')
>'{"row 1":{"col 1":"a","col 2":"b"},"row 2":{"col 1":"c","col 2":"d"}}'

###########
records
###########
df.to_json(orient='records')
>'[{"col 1":"a","col 2":"b"},{"col 1":"c","col 2":"d"}]'

###########
table
###########
df.to_json(orient='table')
>'{"schema": {"fields": [{"name": "index", "type": "string"},
                        {"name": "col 1", "type": "string"},
                        {"name": "col 2", "type": "string"}],
             "primaryKey": "index",
             "pandas_version": "0.20.0"},
  "data": [{"index": "row 1", "col 1": "a", "col 2": "b"},
           {"index": "row 2", "col 1": "c", "col 2": "d"}]}'
 

参考文献:

1.  https://blog.csdn.net/huanbia/article/details/72674832?utm_source=copy 

2. http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_json.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值