Как показать все имена столбцов в pandas dataframe?
У меня есть датафрейм, состоящий из сотен столбцов, и мне тоже нужно увидеть все имена столбцов.
Что я сделал:
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
Вы можете глобально установить параметры печати. Я думаю, что это должно работать:
pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)
Это позволит вам видеть все имена столбцов и строк, когда вы делаете .head()
. Имя столбца не будет усечено.
Если вы хотите видеть только имена столбцов, вы можете сделать: cols = 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
В интерактивной консоли это легко сделать:
data_all2.columns.tolist()
Или это в скрипте:
print(data_all2.columns.tolist())
Ответ 4
Чтобы получить все имя столбца, вы можете перебирать data_all2.columns
.
columns = data_all2.columns
for col in columns:
print col
Вы получите имена всех столбцов. Или вы можете сохранить все имена столбцов в другой переменной списка и затем распечатать список.
Ответ 5
Если вы просто хотите увидеть все столбцы, вы можете сделать что-то подобное в качестве быстрого исправления
cols = data_all2.columns
теперь cols будет вести себя как итеративная переменная, которая может быть проиндексирована. например
cols[11:20]
Ответ 6
Быстрое и грязное решение было бы превратить его в строку
print('\t'.join(data_all2.columns))
приведет к тому, что все они будут распечатаны отдельно от вкладок. Конечно, обратите внимание, что с 102 именами, все они довольно длинными, это будет немного трудно читать
Ответ 7
То, что работало для меня, было следующим:
pd.options.display.max_seq_items = None
Вы также можете установить его в целое число больше, чем количество столбцов.