解决Python Pandas DataFrame表格打印输出不能对齐的问题

 更新时间:2023年09月12日 09:58:40   作者:小平友littlePING  
这篇文章主要介绍了解决Python Pandas DataFrame表格打印输出不能对齐的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

最近在学数据分析,中英文混合的DataFrame表格会出现print()打印无法对齐的情况,导致输出的结果都没有对齐,十分不美观,也影响直观的分析。

下面介绍两种解决方案,总有一款适合你:

准备工作:

为演示方便,通过导入excel的方式建立名为’stu’, ‘stu2’ 的两个DataFrame格式对象

import pandas as pd
stu = pd.read_excel('Data\studentsInfo.xlsx','Group1',index_col=0)
stu.dropna(inplace=True)
stu2 = pd.read_excel('Data\studentsInfo.xlsx','Group1',index_col=0)

1.适用于纯文本输出print()函数的设置方法

若在IDLE等纯文本输出的环境下,使用display()函数或print()函数都只能输出纯文本形式的表格,

如下:

由于中英文混合的关系导致列没有对齐

通过pd.set_option进行设置,

代码如下:

pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
pd.set_option('display.width', 180) # 设置打印宽度(**重要**)
print(stu)

输出如下:

注意:如果打印宽度设置过小或保持默认,则有可能出现表格的列被强制换行的情形:

2.适用于JupyterNotebook的格式化的表格输出

若在JupyterNotebook中直接输出DataFrame格式,则是有线框的HTML格式的表格

代码如下:(以下代码均是JupyterNotebook的cell中运行的)

stu

输出如下:(是一个HTML格式的表格)

性别年龄身高体重省份成绩月生活费课程兴趣案例教学
序号
2male22.018071.0GuangXi77.01300.034
4male20.017772.0LiaoNing79.0900.044
6male20.017975.0YunNan92.0950.055
7female21.016653.0LiaoNing80.01200.045
8female20.016247.0AnHui78.01000.044
9female20.016247.0AnHui78.01000.044
10male19.016976.0HeiLongJiang88.01100.055

但是这种方式无法同时在一个cell中显示两个表格,只显示最后一个表格

代码如下:

stustu2

输出如下:

性别年龄身高体重省份成绩月生活费课程兴趣案例教学
序号
1male20.017070.0LiaoNingNaN800.054
2male22.018071.0GuangXi77.01300.034
3maleNaN18062.0FuJian57.01000.024
4male20.017772.0LiaoNing79.0900.044
5male20.0172NaNShanDong91.0NaN55
6male20.017975.0YunNan92.0950.055
7female21.016653.0LiaoNing80.01200.045
8female20.016247.0AnHui78.01000.044
9female20.016247.0AnHui78.01000.044
10male19.016976.0HeiLongJiang88.01100.055

为了在一个cell 输出多个表格,可以使用IPython.display,

代码如下:

from IPython.display import display
display(stu)
display(stu2)

输出如下:

性别年龄身高体重省份成绩月生活费课程兴趣案例教学
序号
2male22.018071.0GuangXi77.01300.034
4male20.017772.0LiaoNing79.0900.044
6male20.017975.0YunNan92.0950.055
7female21.016653.0LiaoNing80.01200.045
8female20.016247.0AnHui78.01000.044
9female20.016247.0AnHui78.01000.044
10male19.016976.0HeiLongJiang88.01100.055
性别年龄身高体重省份成绩月生活费课程兴趣案例教学
序号
1male20.017070.0LiaoNingNaN800.054
2male22.018071.0GuangXi77.01300.034
3maleNaN18062.0FuJian57.01000.024
4male20.017772.0LiaoNing79.0900.044
5male20.0172NaNShanDong91.0NaN55
6male20.017975.0YunNan92.0950.055
7female21.016653.0LiaoNing80.01200.045
8female20.016247.0AnHui78.01000.044
9female20.016247.0AnHui78.01000.044
10male19.016976.0HeiLongJiang88.01100.055

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python下载指定页面上图片的方法

    Python下载指定页面上图片的方法

    这篇文章主要介绍了Python下载指定页面上图片的方法,涉及Python的正则匹配、URL及文件操作相关技巧,需要的朋友可以参考下
    2016-05-05
  • keras K.function获取某层的输出操作

    keras K.function获取某层的输出操作

    这篇文章主要介绍了keras K.function获取某层的输出操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Django Admin中增加导出Excel功能过程解析

    Django Admin中增加导出Excel功能过程解析

    这篇文章主要介绍了Django Admin中增加导出Excel功能过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • python并发编程之线程实例解析

    python并发编程之线程实例解析

    这篇文章主要介绍了python并发编程之线程实例解析,具有一定借鉴价值,需要的朋友可以参考下
    2017-12-12
  • python+Tkinter+多线程的实例

    python+Tkinter+多线程的实例

    这篇文章主要介绍了python+Tkinter+多线程的实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Pytorch深度学习addmm()和addmm_()函数用法解析

    Pytorch深度学习addmm()和addmm_()函数用法解析

    这篇文章主要为大家介绍了Pytorch中addmm()和addmm_()函数用法解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Python实现批量采集商品数据的示例详解

    Python实现批量采集商品数据的示例详解

    这篇文章主要为大家详细介绍了如何利用Python实现批量采集商品的数据,文中的示例代码讲解详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 如何利用pygame实现简单的五子棋游戏

    如何利用pygame实现简单的五子棋游戏

    这篇文章主要给大家介绍了关于如何利用pygame实现简单的五子棋游戏的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用pygame具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • Python使用dict.fromkeys()快速生成一个字典示例

    Python使用dict.fromkeys()快速生成一个字典示例

    这篇文章主要介绍了Python使用dict.fromkeys()快速生成一个字典,结合实例形式分析了Python基于dict.fromkeys()生成字典的相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • Python中X[:,0]和X[:,1]的用法

    Python中X[:,0]和X[:,1]的用法

    这篇文章主要介绍了Python中X[:,0]和X[:,1]的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05

最新评论