pandas.DataFrame.to_json按行转json的方法


Posted in Python onJune 05, 2018

最近需要将csv文件转成DataFrame并以json的形式展示到前台,故需要用到Dataframe的to_json方法

to_json方法默认以列名为键,列内容为值,形成{col1:[v11,v21,v31…],col2:[v12,v22,v32],…}这种格式,但有时我们需要按行来转为json,形如这种格式[row1:{col1:v11,col2:v12,col3:v13…},row2:{col1:v21,col2:v22,col3:v23…}]

通过查找官网我们可以看到to_json方法有一个参数为orient,其参数说明如下:

orient : string 
Series 
default is ‘index' 
allowed values are: {‘split','records','index'} 
DataFrame 
default is ‘columns' 
allowed values are: {‘split','records','index','columns','values'} 
The format of the JSON string 
split : dict like {index -> [index], columns -> [columns], data -> [values]} 
records : list like [{column -> value}, … , {column -> value}] 
index : dict like {index -> {column -> value}} 
columns : dict like {column -> {index -> value}} 
values : just the values array 
table : dict like {‘schema': {schema}, ‘data': {data}} describing the data, and the data component is like orient='records'. 
Changed in version 0.20.0

大致意思为:

如果是Series转json,默认的orient是'index',orient可选参数有 {‘split','records','index'}

如果是DataFrame转json,默认的orient是'columns',orient可选参数有 {‘split','records','index','columns','values'}

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类似

看一下官网给的demo

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='index')
>'[{"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"}]}'

主要参考官网API:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_json.html

以上这篇pandas.DataFrame.to_json按行转json的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现360皮肤按钮控件示例
Feb 21 Python
Python中json格式数据的编码与解码方法详解
Jul 01 Python
python 通过logging写入日志到文件和控制台的实例
Apr 28 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
python 将有序数组转换为二叉树的方法
Mar 26 Python
pyinstaller打包多个py文件和去除cmd黑框的方法
Jun 21 Python
python笔记之mean()函数实现求取均值的功能代码
Jul 05 Python
Python中pymysql 模块的使用详解
Aug 12 Python
python爬虫数据保存到mongoDB的实例方法
Jul 28 Python
python通过函数名调用函数的几种场景
Sep 23 Python
如何用python写个模板引擎
Jan 14 Python
在pyCharm中下载第三方库的方法
Apr 18 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
Jun 05 #Python
Python实现迭代时使用索引的方法示例
Jun 05 #Python
Numpy 将二维图像矩阵转换为一维向量的方法
Jun 05 #Python
django反向解析和正向解析的方式
Jun 05 #Python
Python numpy实现二维数组和一维数组拼接的方法
Jun 05 #Python
Python实现字典(dict)的迭代操作示例
Jun 05 #Python
python矩阵转换为一维数组的实例
Jun 05 #Python
You might like
PHP中绘制图像的一些函数总结
2014/11/19 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
php注册审核重点解析(数据访问)
2017/05/23 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
2018/02/06 PHP
详解php协程知识点
2018/09/21 PHP
数组Array进行原型prototype扩展后带来的for in遍历问题
2010/02/07 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
javascript拖拽应用实例(二)
2016/03/25 Javascript
node中Express 动态设置端口的方法
2017/08/04 Javascript
如何编写一个完整的Angular4 FormText 组件
2017/11/18 Javascript
JS实现读取xml内容并输出到div中的方法示例
2018/04/19 Javascript
vue实现动态添加数据滚动条自动滚动到底部的示例代码
2018/07/06 Javascript
从vue源码看props的用法
2019/01/09 Javascript
Node.js 实现远程桌面监控的方法步骤
2019/07/02 Javascript
layui table 表格上添加日期控件的两种方法
2019/09/28 Javascript
js实现内置计时器
2019/12/16 Javascript
[01:59]DOTA2首部纪录片《Free to play》预告片
2014/03/12 DOTA
Python中的一些陷阱与技巧小结
2015/07/10 Python
Python实现的RSS阅读器实例
2015/07/25 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
2018/02/22 Python
对pandas中Series的map函数详解
2018/07/25 Python
python groupby 函数 as_index详解
2019/12/16 Python
详解Python 重学requests发起请求的基本方式
2020/02/07 Python
python Socket网络编程实现C/S模式和P2P
2020/06/22 Python
Python使用for生成列表实现过程解析
2020/09/22 Python
浅谈matplotlib默认字体设置探索
2021/02/03 Python
审计主管岗位职责
2014/01/31 职场文书
多媒体编辑专业毕业生求职信
2014/06/13 职场文书
幸福家庭标语
2014/06/27 职场文书
客房领班岗位职责
2015/02/11 职场文书
2015年售后服务工作总结
2015/04/25 职场文书
2016年八一建军节活动总结
2016/04/05 职场文书
《天净沙·秋思》教学反思三篇
2019/11/02 职场文书
解决numpy和torch数据类型转化的问题
2021/05/23 Python
解决mysql模糊查询索引失效问题的几种方法
2021/06/18 MySQL
django 认证类配置实现
2021/11/11 Python