当前位置: 首页 > news >正文

Jupyter Notebook :美化读取到的JSON格式的数据(以表格形式呈现)

一、问题

在使用Jupyter Notebook读取Json格式的数据时,有时候读取出来的数据格式会混乱,因此可以借助第三方库tabulate将读取到的数据转换为表格形式从而美化输出。

二、数据

  • 测试数据格式如下:

在这里插入图片描述

  • 测试数据
# 测试数据
courses =[
  { "study":3450,
    "duration": 4680,
    "name": "课程1",
    "id": 8164,
    "visit": 1597,
    "createDate": "2018-01-22",
    "comments": 11, 
    "credits": 4
  },
    {
       "study":160,
      
    "duration": 2467,
    "name": "课程2",
    "id": 18057,
    "visit": 603,
    "createDate": "2020-06-12",
    "comments": 14, 
    "credits":7.5
  },
  
  {
      "study":1708,
    "duration": 0,
    "name": "课程3",
    "id": 11555,
    "visit": 7779,
    "createDate": "2018-11-30",
    "comments": 1, 
    "credits":0
  },
  {
"study":435,
    "duration": 6713,
    "name": "课程4",
    "id": 11793,
    "visit": 3147,
    "createDate": "2019-01-19",
    "comments": 0, 
    "credits":0
  },
  {
"study":0,
    "duration": 12462,
    "name": "课程5",
    "id": 12104,
    "visit": 0,
    "createDate": "2019-04-08",
    "comments": 0, 
    "credits":0
  },
  {
      "study":1,
    "duration": 468,
    "name": "课程6",
    "id": 12592,
    "visit": 4,
    "createDate": "2019-06-05",
    "comments": 0, 
    "credits":0
  },
  {
      "study":3514,
    "duration": 23505,
    "name": "课程7",
    "id": 14459,
    "visit": 104005,
    "createDate": "2020-03-30",
    "comments": 22, 
    "credits":14
  },
  {
      "study":145,
    "duration": 3715,
    "name": "课程8",
    "id": 16618,
    "visit": 908,
    "createDate": "2020-05-22",
    "comments": 0, 
    "credits":0
  },
  {
      "study":135,
    "duration": 3741,
    "name": "课程9",
    "id": 16621,
    "visit": 813,
    "createDate": "2020-05-22",
    "comments": 4, 
    "credits":0,
  },
  {
      "study":257,
    "duration": 3891,
    "name": "课程10",
    "id": 17588,
    "visit": 1134,
    "createDate": "2020-06-04",
    "comments": 8, 
    "credits":3.5
  },
    {
    "study":5005,
    "duration": 2175,
    "name": "课程11",
    "id": 11205,
    "visit": 29907,
    "createDate": "2018-09-26",
    "comments": 24, 
    "credits":4
  },
  
]

三、直接读取

import pandas as pd
df= pd.DataFrame(courses)

# 打印数据
print(df.head())
  • 效果如下:
    字段与具体的字段内容对不齐,如果具体内容长一点,会更加混乱。
    在这里插入图片描述

四、解决

使用 tabulate库美化输出

  • 安装tabulate 库
pip install tabulate
  • 导入库
from tabulate import tabulate
import pandas as pd
  • 重新读取数据
# 读取数据
df = pd.DataFrame(courses)
data_subset = df[['name', 'study', 'visit', 'days_online', 'duration','comments','credits']].head().values.tolist()
# 将英文字段替换成中文的
headers = ['课程名称', '学习人数', '学习人次', '上架天数(天)','时长(秒)','评论数','学分']
# 转换为列表并美化输出
print(tabulate(data_subset, headers=headers, tablefmt='grid', maxcolwidths=40))
  • 效果如下:
    (注:这里的上架天数需要额外计算,此处不展开,主要看读取的效果!)
    在这里插入图片描述

相关文章:

  • Unity 与 JavaScript 的通信交互:实现跨平台的双向通信
  • 【MySQL基础-12.2】MySQL 外连接详解:LEFT JOIN, RIGHT JOIN 和 FULL JOIN 的全面指南
  • element-plus中Cascader级联选择器组件的使用
  • 清晰易懂的 C 语言开发环境彻底卸载与清理教程
  • 用Trae辅助Java开发
  • 硬件基础(5):(3)二极管的应用
  • 如何使用 Postman 进行接口测试?
  • Spring 如何处理循环依赖
  • Superduper开源程序:在现有数据基础设施和首选工具上构建端到端 AI 应用程序和代理工作流 - 无需迁移数据
  • 阿里云国际站代理商:物联网设备怎样就近接入计算节点?
  • CSS3学习教程,从入门到精通,CSS3 定位布局页面知识点及案例代码(18)
  • 高光谱工业相机+LED光源系统助力材料分类和异物检测、实现高速在线检测
  • Excel新增的函数
  • JVM
  • Python大数据方向就业
  • 3-25hash专训
  • php写入\查询influxdb数据
  • HCIP NOTE_01_基础概念
  • GitHub和Gitee上的一些AI项目
  • springboot使用netty做TCP客户端
  • php网站开发心得/百度上海分公司地址
  • 重庆网站优化排名/中国没有限制的搜索引擎
  • 修改网站源码连接数据库怎么做/站内优化主要从哪些方面进行
  • 设计师图片素材网站/最近的热点新闻
  • 有哪些网站是静态网站/郑州网络推广
  • 如何在国外网站做翻译兼职/网站排名费用