如何在大型 Pandas 数据框中显示所有列的名称?

2025-03-26 09:08:00
admin
原创
15
摘要:问题描述:我有一个由数百列组成的数据框,我需要查看所有列名。我做了什么:In[37]: data_all2.columns 输出为:Out[37]: Index(['customer_id', 'incoming', 'outgoing', 'awan', 'bank', 'family', 'food', ...

问题描述:

我有一个由数百列组成的数据框,我需要查看所有列名。

我做了什么:

In[37]:
data_all2.columns

输出为:

Out[37]:
Index(['customer_id', 'incoming', 'outgoing', 'awan', 'bank', 'family', 'food',
       'government', 'internet', 'isipulsa',
       ...
       'overdue_3months_feature78', 'overdue_3months_feature79',
       'overdue_3months_feature80', 'overdue_3months_feature81',
       'overdue_3months_feature82', 'overdue_3months_feature83',
       'overdue_3months_feature84', 'overdue_3months_feature85',
       'overdue_3months_feature86', 'loan_overdue_3months_total_y'],
      dtype='object', length=102)

如何显示所有列而不是截断列表?


解决方案 1:

您可以全局设置打印选项。我认为这应该可行:

方法 1:

pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)

方法 2:

pd.options.display.max_columns = None
pd.options.display.max_rows = None

这将允许您在执行时查看所有列名和行.head()。任何列名都不会被截断。


如果您只想查看列名称,可以执行以下操作:

print(df.columns.tolist())

解决方案 2:

要获取 DataFrame 的所有列名,df_data在此示例中,您只需使用命令df_data.columns.values。这将向您显示包含 Dataframe 所有列名的列表

代码:

df_data=pd.read_csv('../input/data.csv')
print(df_data.columns.values)

输出:

['PassengerId' 'Survived' 'Pclass' 'Name' 'Sex' 'Age' 'SibSp' 'Parch' 'Ticket' 'Fare' 'Cabin' 'Embarked']

解决方案 3:

这样就成功了。注意使用display()而不是 print。

with pd.option_context('display.max_rows', 5, 'display.max_columns', None): 
    display(my_df)

编辑:

display需要使用,因为pd.option_context设置仅适用于display和而不适用于print

解决方案 4:

接受的答案导致我的列名换行。要显示所有列名而不换行,请同时设置 display.max_columns 和display.width:

pandas.set_option('display.max_columns', None)
pandas.set_option('display.width', 1000)

解决方案 5:

如果要查看 Pandas df.head() 中的所有列,请在运行代码之前使用此代码片段。所有列数据都将可见。

pd.set_option('display.max_columns', None)

此后创建数据框并尝试此操作。

df.head()

它将打印所有列,而不是在较大的数据集中显示“....”

解决方案 6:

在交互式控制台中,很容易做到:

data_all2.columns.tolist()

或者在脚本中这样写:

print(data_all2.columns.tolist())

解决方案 7:

对我有用的是:

pd.options.display.max_seq_items = None

您还可以将其设置为大于列数的整数。

解决方案 8:

我发现最简单的方法就是

list(df.columns)

就我个人而言,我不想改变全局变量,因为我并不经常想看到所有列名。

解决方案 9:

这不是一个常规答案,但我猜你可以转置数据框来查看行而不是列。我使用这个是因为我发现查看行比查看列更“直观”:

data_all2.T

这应该可以让您查看所有行。此操作不是永久性的,它只是让您查看数据框的转置版本。

如果行仍然被截断,只需用来print(data_all2.T)查看所有内容。

解决方案 10:

你可以尝试这个

pd.pandas.set_option('display.max_columns', None)

解决方案 11:

试试这个 -

df.列.值

解决方案 12:

for i in df2.columns.tolist():
  print(i)

解决方案 13:

要获取所有列名,您可以迭代data_all2.columns

columns = data_all2.columns
for col in columns:
    print col

您将获得所有列名。或者您可以将所有列名存储到另一个列表变量,然后打印列表。

解决方案 14:

你可以这样做

df.info(show_counts=True)

它将显示所有列。设置show_countsTrue显示数据计数not_null

解决方案 15:

df.head(None)

这样,你就可以看到所有带有格式数据框的东西了。你需要写

data_all2.head(None)

解决方案 16:

我在控制台上打印每一列的常用功能是:

pandas.set_option('display.expand_frame_repr', False)

解决方案 17:

一个快速而肮脏的解决方案是将其转换为字符串

print('    '.join(data_all2.columns))

会导致它们全部打印出来,并用制表符分隔。当然,请注意,有 102 个名字,而且它们都很长,阅读起来会有点困难

解决方案 18:

我知道这是重复,但我总是复制粘贴并修改 YOLO 的答案:

pd.set_option('display.max_columns', 500)
pd.set_option('display.max_rows', 500)

解决方案 19:

我可能偏离了主题,但我带着同样类型的问题来到这个帖子,我发现如果您想查看长列表和索引中的所有内容,这就是简单的答案。

这是我在 Spyder 中使用的:

print(df.info()) 

或者这是 Jupyter 所需要的:

df.info()

解决方案 20:

如果你只想查看所有列,你可以做一些这样的快速修复

cols = data_all2.columns

现在 cols 将表现为可以索引的迭代变量。例如

cols[11:20]

解决方案 21:

我有很多重复的列名,一旦我运行

df = df.loc[:,~df.columns.duplicated()]

我能够看到完整的专栏列表

来源:
https ://stackoverflow.com/a/40435354/5846417

解决方案 22:

“df.types”将数据框“df”的所有列作为行输出,并且作为附加奖励,您还将获得数据类型。

解决方案 23:

您可以使用以下之一

print(df.columns.tolist())
print(df_data.columns.values)
print(list(df.columns))
相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   2079  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1459  
  建筑行业正处于数字化转型的关键时期,建筑产品生命周期管理(PLM)系统的实施对于提升项目效率、质量和协同性至关重要。特别是在 2025 年,基于建筑信息模型(BIM)的项目进度优化工具成为众多建筑企业关注的焦点。这些工具不仅能够整合项目全生命周期的数据,还能通过精准的分析和模拟,为项目进度管理提供强大支持。BIM 与建...
plm是什么软件   0  
  PLM系统开发的重要性与现状PLM(产品生命周期管理)系统在现代企业的产品研发、生产与管理过程中扮演着至关重要的角色。它贯穿产品从概念设计到退役的整个生命周期,整合了产品数据、流程以及人员等多方面的资源,极大地提高了企业的协同效率和创新能力。通过PLM系统,企业能够实现产品信息的集中管理与共享,不同部门之间可以实时获取...
国产plm软件   0  
  PLM(产品生命周期管理)系统在企业产品研发与管理过程中扮演着至关重要的角色。随着市场竞争的加剧和技术的飞速发展,企业对PLM系统的迭代周期优化需求日益迫切。2025年敏捷认证对项目管理提出了新的要求,其中燃尽图作为一种强大的可视化工具,在PLM系统迭代周期优化中有着广泛且重要的应用。深入探讨这些应用,对于提升企业的项...
plm系统主要干什么的   0  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用