在Jupyter Notebook中使用Pandas DataFrame时,如何查看完整数据而非显示省略号(...)
解决Jupyter Notebook中Pandas DataFrame显示省略号的问题
嘿,我太懂这种烦恼了——刚导入一个DataFrame,结果一半内容被...代替,根本看不到完整数据!别着急,下面这些方法能帮你轻松查看所有数据内容:
临时调整显示设置(当前Notebook会话有效)
这是最常用的方式,针对当前会话修改Pandas的显示选项,不用改动全局配置:
显示所有行:取消行数限制,不管DataFrame有多少行都能完整显示
pd.set_option('display.max_rows', None)要是你不想显示全部(比如数据量太大),也可以设具体数字,比如
pd.set_option('display.max_rows', 100),最多显示100行。显示所有列:同理,取消列数限制
pd.set_option('display.max_columns', None)避免列内容截断:有些列的文本/数值很长,会被截断成
...,用这个设置让列内容完整显示pd.set_option('display.max_colwidth', None)一次性设置常用选项:把上面几个命令放一起,开头运行一次就搞定
import pandas as pd # 配置显示选项 pd.set_option('display.max_rows', None) pd.set_option('display.max_columns', None) pd.set_option('display.max_colwidth', None) # 现在查看DataFrame就不会有省略号了 df = pd.DataFrame(your_data) df
快速查看完整数据的替代方法
如果只是临时看一次完整数据,不想修改全局选项,可以试试:
- 把DataFrame转成字符串输出:
print(df.to_string()),虽然格式不如直接显示美观,但能看到所有内容 - 指定显示全部行:
df.head(len(df)),不过只适合行数不多的情况
恢复默认设置
要是之后想回到Pandas的默认显示风格,用这个命令重置所有选项:
pd.reset_option('all')
也可以单独重置某个选项,比如pd.reset_option('display.max_rows')只恢复行数限制。
⚠️ 小提醒:如果你的DataFrame超级大(比如几十万行/列),强制显示全部内容可能会让Notebook加载变慢甚至卡顿。这种情况下建议用df.sample(10)查看随机样本,或者用df.loc[:, ['目标列1', '目标列2']]只查看需要的列。
内容的提问来源于stack exchange,提问作者Jerem Moses




