调试Pandas中打印DataFrame的问题
我该怎么调试打印Pandas数据框时出现的问题呢?我调用了这个函数,然后打印输出(输出是一个Pandas数据框)。
n=ion_tab(y_ion,cycles,t,pH)
print(n)
输出的最后部分看起来是这样的:
58 O2 1.784306e-35 4 86 7.3
60 HCO3- 5.751170e+02 5 86 7.3
61 Ca+2 1.825748e+02 5 86 7.3
62 CO2 3.928413e+01 5 86 7.3
63 CaHCO3+ 3.755015e+01 5 86 7.3
64 CaCO3 4.616840e+00 5 86 7.3
65 SO4-2 1.393365e+00 5 86 7.3
66 CO3-2 8.243118e-01 5 86 7.3
67 CaSO4 7.363058e-01 5 86 7.3
... ... ... ... ...
[65 rows x 5 columns]
但是如果我执行n.tail()命令,我就能看到缺失的数据,这似乎是...所暗示的。
print n.tail()
Species ppm as ion Cycles Temp F pH
68 OH- 5.516061e-03 5 86 7.3
69 CaOH+ 6.097815e-04 5 86 7.3
70 HSO4- 5.395493e-06 5 86 7.3
71 CaHSO4+ 2.632098e-07 5 86 7.3
73 O2 1.783007e-35 5 86 7.3
[5 rows x 5 columns]
如果我数一下屏幕上显示的行数,我得到的是60行。如果加上n.tail()显示的那5行,我就得到了预期的65行。打印时是不是有什么限制,只允许显示60行?我的数据框最后出现的...是什么原因呢?
最开始我以为是ion_tab函数限制了打印的内容。但是当我在n.tail()语句中看到缺失的数据时,我就感到困惑了。
任何调试方面的帮助都将不胜感激。
1 个回答
2
Pandas 默认情况下会限制打印的行数。你可以通过 pd.set_option
来改变这个设置。
In [4]: pd.get_option('display.max_rows')
Out[4]: 60
In [5]: pd.set_option('display.max_rows', 100)