如何在终端中打印df而不丢失格式?
假设我有这样一个df:
In: df
Out:
TFs No Esenciales Genes regulados Genes Regulados Positivamente Genes Regulados Negativamente No Tentativo de genes a silenciar No Real de genes a silenciar No Tentativo de genes a inducir
146 YdeO 20 18 2 2 2 0
但当我使用print将其显示在shell中时,它就失去了格式
In: print (df)
Out:
TFs No Esenciales Genes regulados Genes Regulados Positivamente \
146 YdeO 20 18
Genes Regulados Negativamente No Tentativo de genes a silenciar \
146 2 2
No Real de genes a silenciar No Tentativo de genes a inducir \
146 2 0
No Real de genes a inducir Balance de genes Balance real de genes
146 0 2 2
如何使用打印,但保留格式?
我想要的输出是:
In: print (df)
Out:
TFs No Esenciales Genes regulados Genes Regulados Positivamente Genes Regulados Negativamente No Tentativo de genes a silenciar No Real de genes a silenciar No Tentativo de genes a inducir
146 YdeO 20 18 2 2 2 0
有显示options可用于控制
DataFrame
的打印方式。你可能想要:DOCUMENTATION
对于您可能看到的格式,该控件有两种情况。
控制显示器可以处理的字符宽度。
display.width
处理的,可以通过print pd.get_option('display.width')
看到。默认值是80
。第二个控件是数据框中要显示的列数。
display.max_columns
处理的,可以用print pd.get_option('display.max_columns')
看到。默认值是20
。display.width
让我们来研究一下这对示例数据帧的作用
pd.set_option('display.width', 40)
pd.set_option('display.width', 120)
这应该向右滚动。
display.max_columns
让我们用
pd.set_option('display.width,80)
把'display.width'
放回80现在让我们探讨一下
注意中间的椭圆。在这个数据帧中有40个列,为了得到20个最大列的显示计数,大熊猫采取了前10个列{{CD14}}和最后10个列{{CD15}},并在中间放置了一个椭圆。'display.max_columns'
的不同值pd.set_option('display.max_columns', 30)
注意字符的宽度保持不变,但我有更多的列。熊猫队拿下了前15列和后15列。
若要显示所有列,需要将此选项设置为至少与要显示的列数相同大。
pd.set_option('display.max_columns', 40)
没有省略号,将显示所有列。
将两个选项组合在一起
这一点很简单。
pd.set_option('display.width', 1000)
使用1000来允许较长的时间。pd.set_option('display.max_columns', 1000)
还允许宽数据帧。使用您的数据
大警告
当你运行这个,你可能看不到你在这里做的滚动魔术。这是因为你的终端可能没有向右滚动。下面是jupyter笔记本的屏幕截图。它看起来不对,因为文本正在被包装。但是,字符串中没有换行符,这一点可以证明,当我将其复制并粘贴到堆栈溢出时,它会正确显示。
相关问题 更多 >
编程相关推荐