python 实现长数据完整打印方案

0.摘要

python中的长数据在打印的时候,往往为了方便阅读会进行省略操作,但这会对我们查看数据带来不便。本文主要介绍完整显示长数据的方法。

1.numpy数据

不同类型的数据的完整显示方法各有不同,我们先介绍numpy数组的输出设置方法:

在输出位置前加入 如下代码:

import numpy as np
np.set_printoptions(threshold=np.inf)

numpy对数组长度设置了一个阈值,数组长度<=阈值:完整打印;数组长度>阈值:以省略的形式打印;

这里的np.inf只是为了保证这个阈值足够大,以至于所有长度的数组都能完整打印,读者也可以根据自己的实际情况进行设置。

比如,threshold=10000,那么数组长度<=10000的数组可以完整打印;数组长度>10000:以省略的形式打印。

2.pandas数据

pandas数据的设置方法分为行和列:

import pandas as pd
#显示所有列
pd.set_option("display.max_columns", None)
#显示所有行
pd.set_option("display.max_rows", None)
#设置value的显示长度为100,默认为50
pd.set_option("max_colwidth",100)

3.tensor数据

将tensor转为list即可。

在pytorch和tensorflow中有一种数据类型叫做tensor,tensor数据省略问题,numpy和pandas的设置都是无效的。

补充:python - Print 数组无法完整输出解决方法

直接在import numpy 加上下面一句代码即可解决 !!!

import numpy as np
np.set_printoptions(threshold=np.inf)

补充:Python中Dataframe通过print输出多行时显示省略号

笔者使用Python进行数据分析时,通过print输出Dataframe中的数据,当Dataframe行数很多时,中间部分显示省略号,如下图所示:

0      项华祥
1      何炅
2      张艺飞
3      李仁港
4      崔龄燕
5      董春泽
6     邓超、俞白眉
7     叶伟信,邹凯光
8      肖洋
    ...   
57     刘镇伟
58     周拓如
59    陆剑青、梁乐民
60     陈木胜
61     李仁港
62     许安、杨龙澄
63     吴天明
64      李骏
65     申太罗
66   吕寅荣、亚历山德罗・卡罗尼
67    罗兰・艾默里奇
68     布莱恩・辛格
69   安东尼・罗素、乔・罗素

如果我想通过print显示全部数据,怎么处理呢?

通过查看pandas的官方文档可知,pandas.set_option() 可以设置pandas相关的参数,从而改变默认参数。 打印pandas数据时,默认是输出100行,多的话中间数据会输出省略号。

在代码中添加以下两行代码,可以改变显示宽度和行数,这样就能完整地查看数据了。

pd.set_option("display.width", 1000) # 设置字符显示宽度
pd.set_option("display.max_rows", None) # 设置显示最大行

以上为个人经验,希望能给大家一个参考,也希望大家多多支持云海天教程。如有错误或未考虑完全的地方,望不吝赐教。