浅析Python pandas模块输出每行中间省略号问题

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

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

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

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

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

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

df = pd.read_csv('C:\\Users\\Administrator\\Desktop\\aaa.csv',encoding='gb2312')
 pd.set_option('display.width',None)
 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

总结

相关推荐