Во всех примерах, которые я нашел, обычно требуется имя столбца, чтобы установить его в качестве индекса

Вместо того, чтобы идти в Excel, чтобы добавить заголовок столбца, мне было интересно, можно ли установить пустой заголовок в качестве индекса. В столбце есть все значения, которые я хочу включить, но отсутствует имя столбца:

enter image description here

Мой сценарий в настоящее время:

import pandas as pd
data = pd.read_csv('file.csv')
data
2
DanONS 1 Сен 2017 в 14:46

4 ответа

Лучший ответ

Вам не нужно переименовывать первый столбец в Excel. Это также легко в пандах:

new_columns = data.columns.values
new_columns[0] = 'Month'
data.columns = new_columns

После этого вы можете установить индекс:

data = data.set_index('Month')
2
StefanK 1 Сен 2017 в 12:33

Вы также можете просто выбрать столбец по id с помощью iloc:

data = data.set_index(data.iloc[:, 0])

Или, когда вы звоните pd.read_csv(), укажите index_col:

data = pd.read_csv('path.csv', index_col=0)
8
Kyle 1 Сен 2017 в 15:27

Когда я сталкиваюсь с отсутствующими именами столбцов, Панды всегда называют их «Безымянный: n», где n = ColumnNumber-1. то есть «Безымянный: 0» для первого столбца, «Безымянный: 1» для второго и т. д. Поэтому я думаю, что в вашем случае следующий код должен быть полезным:

# set your column as the dataframe index
data.index = data['Unnamed: 0']
# now delete the column
data.drop('Unnamed: 0', axis=1, inplace=True)
# also delete the index name which was 'Unnamed: 0' obviously
del data.index.name 
0
whateveros 1 Сен 2017 в 13:42

Вы можете сделать следующее:

import pandas as pd
data = pd.read_csv('file.csv',index_col=0)
data
0
Kirti Nikam 24 Июн 2019 в 11:10