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

我做了什么:

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)

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


当前回答

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

data_all2.columns.tolist()

或者在脚本中:

print(data_all2.columns.tolist())

其他回答

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

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

我可以看到完整的列列表

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

如果你想看到Pandas df.head()中的所有列,那么在运行你的代码之前使用这个片段。所有列数据都是可见的。

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

在此之后,创建您的数据框架,并尝试这个。

df.head()

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

要获取DataFrame(本例中为df_data)的所有列名,您只需要使用命令df_data.columns.values。 这将显示一个包含数据框架所有列名的列表

代码:

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']

你可以试试这个

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

这不是一个传统的答案,但我猜您可以转置数据框架来查看行而不是列。我使用这个方法是因为我发现看行比看列更“直观”:

data_all2.T

这应该可以让您查看所有行。这个动作不是永久的,它只是让你查看数据帧的转置版本。

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