我的数据框中有一些列的长标题,我希望能够包装文本.我知道这个功能内置于熊猫中,就像我一样:
pd.DataFrame(np.random.randn(2, 10),
columns=['Very Long Column Title ' + str(i) for i in range(10)])
Run Code Online (Sandbox Code Playgroud)
但是如果我有更少的列,标题将不会换行:
pd.DataFrame(np.random.randn(10, 2),
columns=['Very Long Column Title ' + str(i) for i in range(2)])
Run Code Online (Sandbox Code Playgroud)
我还尝试手动插入换行符:
import pandas as pd
pd.DataFrame(np.random.randn(10, 2),
columns=['Very Long \n Column Title ' + str(i) for i in range(2)])
Run Code Online (Sandbox Code Playgroud)
但是,它提供与上面相同的输出.
我发现类似的答案有关这个主题:
我正在使用Jupyter笔记本电脑,但如果可能的话,我更喜欢基于熊猫的解决方案.
关于如何更改 pandas 数据框中的列宽,有很好的答案,例如此处,但我找不到任何描述如何更改行高的内容?
我正在尝试并排查看两个长文本以进行比较,并且我想增加行高以使其更容易。也许与某些有关expand_frame_repr?
我正在将大型csv文件读入pandas,其中一些包含数千个字符的String列.有没有快速的方法来限制列的宽度,即只保留前100个字符?
香草蟒蛇REPL:
>>> 'na'
'na'
>>> for i in range(4):
... f'{_+_}'
... else:
... 'batman'
...
'nana'
'nananana'
'nananananananana'
'nananananananananananananananana'
'batman'
>>>
Run Code Online (Sandbox Code Playgroud)
使用相同解释器的IPython REPL:
>>> 'na'
'na'
>>> for i in range(4):
... f'{_+_}'
... else:
... 'batman'
...
>>> _
'na'
Run Code Online (Sandbox Code Playgroud)
这种差异显然与IPython编译代码的模式有关,与显示钩子无关.是否可以将IPython配置为编译/执行单元格块,就像普通的Python REPL一样?我更喜欢IPython不会干扰或修改这样的底层运行时机制.