临时更改熊猫的set_option以显示数据框

时间:2018-09-24 03:19:06

标签: python pandas

我正在使用Jupyter笔记本,并导入了许多DataFrames,其中一个包含很长的字符串。因此,我想临时更改pandas的显示选项,而不影响全局设置。我尝试使用with

with pd.set_option('display.max_colwidth', 220): 
    df.head()

但是它不起作用并返回AttributeError: __enter__.

我想念什么吗?

1 个答案:

答案 0 :(得分:0)

pandas.option_context

with pd.option_context('display.max_colwidth', 220):
  print(df.head())

考虑d1

d1 = pd.DataFrame(dict(A=['brown', 'blue', 'blue'*20]))

print(d1)

                                                   A
0                                              brown
1                                               blue
2  bluebluebluebluebluebluebluebluebluebluebluebl...

您会看到列宽不够长

with pd.option_context('display.max_colwidth', 220):
  print(d1.head())                                                           

    A
0                                                                             brown
1                                                                              blue
2  blueblueblueblueblueblueblueblueblueblueblueblueblueblueblueblueblueblueblueblue

显示HTML

from IPython.display import display, HTML

with pd.option_context('display.max_colwidth', 220):
  display(HTML(d1.to_html()))

enter image description here