Панды создают Dataframe с индексным именем в качестве имени столбца - PullRequest
0 голосов
/ 24 мая 2018

У меня есть существующий фрейм данных с именем столбца и данными.Я хочу изменить index.name, чтобы датафрейм был именем столбца.Я не совсем понимаю, multi - indexing как мне это сделать?Потому что тогда мне нужно передать этот фрейм данных в функцию to_sql, которая рассматривает индекс как имя столбца для таблицы.

В настоящее время для меня dataframe.index это RangeIndex(start=0, stop=1669, step=1)

и dataframe.index.nameэто None

Я сделал следующее:

dataframe.index.names = dataframe.columns
dataframe = dataframe.rename_axis(dataframe.columns)

Это дает мне ошибку как Length of new names must be 1, got 67.67 - это номер столбца в кадре данных.

1 Ответ

0 голосов
/ 24 мая 2018

Зависит от MultiIndex или нет.

Для одного индекса необходимо:

df.index.name = 'foo'
df = df.rename_axis('foo')

Для MultiIndex необходимо:

df.index.names = ('foo', 'bar')
df = df.rename_axis(('foo', 'bar'))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...