如何设置Python让pandas的DataFrame describe输出不被拆分为多个块
解决pandas描述统计输出被拆分的方法
你已经设置了display.max_rows和display.max_columns,但pandas默认还会根据终端宽度自动折行拆分输出,这是因为没有调整输出宽度相关的配置,可通过以下两种方案解决:
方法1:调整全局显示配置
适合整个脚本都需要无折行输出的场景:
- 新增
display.width配置,设置为较大值或者None,即可让pandas不限制输出宽度,不会自动折行 - 如果有超长列内容需要展示,还可以同步调整
display.max_colwidth配置,避免单个列内容被截断
import pandas as pd pd.set_option('display.max_rows', 1000) pd.set_option('display.max_columns', 1000) # 新增如下配置,设置输出无宽度限制 pd.set_option('display.width', None) # 可选:设置列内容无长度限制 pd.set_option('display.max_colwidth', None) data = {'Age': [20, 21, 19, 18], 'Height': [120, 121, 119, 118], 'Very_very_long_variable_name': [40, 71, 49, 78] } df = pd.DataFrame(data) print(df.describe().transpose())
方法2:单次打印临时调整(无需修改全局配置)
适合仅单次打印需要完整输出的场景,直接调用DataFrame的to_string()方法,直接输出完整的无折行字符串即可:
import pandas as pd pd.set_option('display.max_rows', 1000) pd.set_option('display.max_columns', 1000) data = {'Age': [20, 21, 19, 18], 'Height': [120, 121, 119, 118], 'Very_very_long_variable_name': [40, 71, 49, 78] } df = pd.DataFrame(data) # 直接转成完整字符串后打印 print(df.describe().transpose().to_string())
内容的提问来源于stack exchange,提问作者lmocsi
相关产品推荐
相关产品推荐

