欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-03-10 21:27:33
0.摘要python中的长数据在打印的时候,往往为了方便阅读会进行省略操作,但这会对我们查看数据带来不便。本文主要介绍完整显示长数据的方法。1.numpy数据不同类型的数据的完整显示方法各有不同,我们...

0.摘要

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

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显示全部数据,怎么处理呢?

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

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

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

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

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