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

我做了什么:

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)

我如何显示所有列,而不是一个截断列表?


当前回答

我的去打印每一列在我的控制台是:

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

其他回答

我找到的最简单的方法就是

list(df.columns)

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

你可以这样做

df.info(show_counts=True)

它会显示所有的列。将show_counts设置为True表示not_null数据的计数。

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

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

我可以看到完整的列列表

信贷: https://stackoverflow.com/a/40435354/5846417

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

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

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

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

会导致它们全部被打印出来,被制表符隔开 当然,请注意,102个名字都相当长,因此阅读起来有点困难