Fhy*_*nir 6 truncation word-wrap dataframe pycharm
我面临的问题与我如何强制“运行”窗口显示给定 Pandas 数据框的所有列有关,而不使其适应窗口的大小(这对我来说是通过截断列名,或通过不显示所有列)。
换句话说,我需要将数据显示在它们预期的行上,如果窗口视图太小而无法显示所有列,则应该出现一个水平条(像往常一样)以允许我轻松遍历数据。
背景:
我处理了一些数据,其中我自动选择并以表格格式将数据的不同部分存储在特定的“.h5”文件中。这是使用 Pandas 数据帧和“to_hdf”函数完成的。然后我读了它并得到以下信息:
数据集由 35 列(不包括时间列)组成,每列有 x 个条目。对于这篇文章,他们被随意命名,以说明问题。
注意:
File -> Settings -> Editor -> General
在“软包装”下禁用软包装我想完成三件事:
这是我尝试过的
我使用了以下两行来稍微改进打印输出:
pd.set_option('display.max_columns', 20)
pd.set_option('display.width', 2000)
Run Code Online (Sandbox Code Playgroud)
但是,并非所有 35 列都显示出来,请参见标记 (1)/“...” 分数。当我将允许的列数从 20 增加到 40 时pd.set_option('display.max_columns', 40)
,会发生这种情况:
看来我们又回到了原点。幸运的是,其中一种负面影响消失了,即截断效应,即。我认为删除了显示的列。
然而,列的换行仍然发生,这样现在行的数量增加了一倍,而应该可以在自己的行上显示所有内容,同时自动显示一个水平条,让用户遍历这些数据。
我还查看了此链接以了解更多使用 Pandas 的 set_option 方法的选项。pd.set_option('expand_frame_repr', True)
除了我使用过的其他线路之外,我还发现并尝试了这条线路。但在我的情况下它没有改变任何东西。
有任何想法吗?
因此,经过大量研究,我找到了两种方法来获取迄今为止用于这项工作的数据库中的列标题(2152 行,119 列)。
第一种方法是,嗯,将它们调用到一个像水平一样的列表。我的数据框= df
print(df.columns.tolist())
Run Code Online (Sandbox Code Playgroud)
第二种方法是不仅在 pycharms 中或任何地方显示整个数据库。它将完全删除截断,但我必须使用两种类型的最大行列方面,这很奇怪。没有其他办法,它自己对我有用。
pd.options.display.width= None
pd.options.display.max_columns= None
pd.set_option('display.max_rows', 3000)
pd.set_option('display.max_columns', 3000)
Then just print your dataframe
print(df)
Run Code Online (Sandbox Code Playgroud)
通过这 4 行代码,我可以打开任何少于 3000 列/行的数据库并查看所有内容。对此非常高兴,但有点困惑为什么 pd.options 或 pd.set_option 不能单独工作。
任何快乐编码的人。
我在程序末尾创建了一个最终变量,例如...end = 'end'
然后我在那里放置一个调试断点,并在调试模式下运行程序。它将在最后停止,您可以在调试模式下打开数据帧,瞧...您可以使用颜色编码在整个数据帧中移动,并且可以在调试模式下使用其他选项。
归档时间: |
|
查看次数: |
7080 次 |
最近记录: |