设置熊猫打印的列宽

时间:2019-09-15 14:03:15

标签: python pandas

将数据提供为

symbol

我希望能够按照

的方式做一些事情
In [403]: data=pd.DataFrame(
     ...: {
     ...: 'A':['hello there', 1],
     ...: 'B':['something', 44],
     ...: })

In [404]: data
Out[404]:
             A          B
0  hello there  something
1            1         44

这将导致前一个数据帧的终端输出与

pd.set_output_width(4)

1 个答案:

答案 0 :(得分:2)

我将支票显示测试到4,但长度4+的省略号将被截断:

with pd.option_context('display.max_colwidth', 3):
    print (data)
             A          B
0  hello there  something
1   1           44       

with pd.option_context('display.max_colwidth', 4):
    print (data)
     A    B
0  ...  ...
1    1   44

with pd.option_context('display.max_colwidth', 5):
    print (data)
      A     B
0  h...  s...
1     1    44

with pd.option_context('display.max_colwidth', 6):
    print (data)
       A      B
0  he...  so...
1      1     44

with pd.option_context('display.max_colwidth', 8):
    print (data)
         A        B
0  hell...  some...
1        1       44

我认为,您需要的是切片-使用apply进行所有列切片:

print (data.astype(str).apply(lambda x: x.str[:4]))
      A     B
0  hell  some
1     1    44

或使用applymap进行元素切片:

print (data.astype(str).applymap(lambda x: x[:4]))
      A     B
0  hell  some
1     1    44