关于Python pandas模块输出每行中间省略号问题

Posted James·Joshua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Python pandas模块输出每行中间省略号问题相关的知识,希望对你有一定的参考价值。

关于Python数据分析中pandas模块在输出的时候,每行的中间会有省略号出现,和行与行中间的省略号....问题,其他的站点(百度)中的大部分都是瞎写,根本就是复制黏贴以前的版本,你要想知道其他问题答案就得去读官方文档吧。

1 #!/usr/bin/python
2 # -*- coding: UTF-8 -*-
3 import numpy as np
4 import pandas as pd
5 import MySQLdb
6 
7 df = pd.read_csv(\'C:\\\\Users\\\\Administrator\\\\Desktop\\\\aaa.csv\',encoding=\'gb2312\')

这是我本地测试用的,先看一下效果。

 

这里看到每一行中间都会出现一个“...”省略号,这是因为模块对于每一行的显示限制,以内存最小形式来显示,所以会以省略号代替其中间的内容。

如果数据行很多的话,对于pandas模块是自动默认只显示100行数据,如果超100行,例如120行,则中间的20行会被“ ... ”替代!

先处理pandas 读取数据后在行中间省略部分的处理:

1 df = pd.read_csv(\'C:\\\\Users\\\\Administrator\\\\Desktop\\\\aaa.csv\',encoding=\'gb2312\')
2 pd.set_option(\'display.width\',None)
3 print df

 

这里只需要添加pd.set_option(\'display.width\',None)即可,http://pandas.pydata.org/pandas-docs/stable/options.html 我也是在官方文档中查找到的,其中有详细的解释,和set_option函数的其他方法。

在度娘中死活也找不到相关的回答,在google中也只有寥寥无几的回答,并且极少出现过这种情况,唯独我遇上了,所以记载以下。

如果是行与行之间的省略,则只需要添加:

pd.set_option(\'display.max_rows\', None)

同样是以最大行数来显示数据。

这里分享一下pandas模块连接数据库的操作:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import numpy as np
import pandas as pd
import MySQLdb

#读取url为csv
data_url = \'https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv\'
dat = pd.read_csv(data_url)

mysql_da = MySQLdb.connect(host=\'localhost\',port=3306,user=\'root\',passwd=\'root\',db=\'库名\')
df = pd.read_sql(\'select * from 表\',con = mysql_da)
pd.set_option(\'display.width\',None)
mysql_da.close()
print df

这部分内容引用:https://www.cnblogs.com/zzhzhao/p/5269217.html#undefined 文章,这是一篇很好的文章,我也是其中学习了很多,但是博主她不知道有没有遇到我的问题。

因为我遇到了这样的问题,所以查了很多资料也未能解决,最后还是在官方文档中偶然间看到的!所以分享给遇到同样问题不知道答案的人!

以上是关于关于Python pandas模块输出每行中间省略号问题的主要内容,如果未能解决你的问题,请参考以下文章

pandas 如何输出全部数据而不是省略号

关于在python中使用pandas模块将列表list/元组tuple写入excel中

Pandas/Python 检查中间值和另一列的输出值

如何Python编程输入若干个中间以空格隔开的整数,并从大到小进行排序,并将结果输出(每行输出1个数)?

关于python pycharm中输出的内容不全的解决办法

Pandas如何显示全部数据