Переименовать без имени столбцы pandas dataframe
Мой файл csv не имеет имени столбца для первого столбца, и я хочу его переименовать. Обычно я делал data.rename(columns={'oldname':'newname'}, inplace=True)
, но в файле csv нет имени, просто ''.
Ответы
Ответ 1
Когда вы загружаете csv, используйте опцию 'index_col', как
pd.read_csv('test.csv', index_col=0)
index_col: int или sequence или False, по умолчанию None Column для использования в качестве ярлыков строк в DataFrame. Если задана последовательность, используется MultiIndex. Если у вас есть неверный файл с разделителями в конце каждой строки, вы можете рассмотреть index_col = False, чтобы заставить pandas не использовать первый столбец в качестве индекса (имена строк)
http://pandas.pydata.org/pandas-docs/dev/generated/pandas.io.parsers.read_csv.html
Ответ 2
Вы можете просмотреть текущий data.head()
используя data.head()
если это возвращает 'Unnamed: 0'
в качестве заголовка столбца, вы можете переименовать его следующим образом:
data.rename( columns={'Unnamed: 0':'new column name'}, inplace=True )
Ответ 3
Он имеет имя, имя просто ''
(пустая строка).
In [2]: df = pd.DataFrame({'': [1, 2]})
In [3]: df
Out[3]:
0 1
1 2
In [4]: df.rename(columns={'': 'A'})
Out[4]:
A
0 1
1 2