Pandas中display.max_rows设置未生效问题:如何让DataFrame准确显示指定的100行
为什么Pandas的
display.max_rows设置被忽略?怎么修复显示100行? 我之前也踩过这个坑,其实不是display.max_rows被忽略了,是Pandas的显示逻辑在悄悄起作用!
问题根源
你的DataFrame有1460行,远超你设置的100行上限。Pandas的显示规则是这样的:
- 如果DataFrame行数 ≤
display.max_rows:直接显示全部行 - 如果行数 >
display.max_rows:默认只显示display.min_rows行(默认值是10),再加上首尾的省略号
所以你只设置了display.max_rows=100,但没调整display.min_rows,当行数超过100时,就触发了默认的10行显示规则。
修复方法
你需要同时设置display.max_rows和display.min_rows,让Pandas在行数超过上限时,显示你指定的行数:
import pandas as pd # 全局设置:最多显示100行,超过上限时也固定显示100行 pd.set_option('display.max_rows', 100) pd.set_option('display.min_rows', 100) # 现在展示你的DataFrame print(df)
其他可选方案
- 临时显示指定行数:如果不想修改全局设置,可以直接用
df.head(100)或df.tail(100)来强制显示前/后100行 - 检查设置是否被覆盖:确认后续代码有没有重新修改
display.max_rows或display.min_rows,比如不小心重置了参数
这样设置后,你的DataFrame就会准确显示100行内容啦!
内容的提问来源于stack exchange,提问作者Marwan_Tamer
相关产品推荐
相关产品推荐

