Подтвердить что ты не робот

Pandas (python): Как добавить столбец в dataframe для индекса?

Индекс, который у меня есть в dataframe (с 30 строками), имеет следующий вид:

Int64Index([171, 174,173, 172, 199..............
        ....175, 200])

Индекс не является строго возрастающим, потому что кадр данных является результатом сортировки(). Я хочу добавить столбец, который представляет собой серию:

[1, 2, 3, 4, 5......................., 30]

Как мне это сделать?

Спасибо.

4b9b3361

Ответ 1

Как насчет этого:

from pandas import *

idx = Int64Index([171, 174, 173])
df = DataFrame(index = idx, data =([1,2,3]))
print df

Это дает мне:

     0
171  1
174  2
173  3

Это то, что вы ищите?

Ответ 2

Как насчет:

df['new_col'] = range(1, len(df) + 1)

Альтернативно, если вы хотите, чтобы индекс был рангом и сохранил исходный индекс в качестве столбца:

df = df.reset_index()

Ответ 3

Я наткнулся на этот вопрос, пытаясь сделать то же самое (я думаю). Вот как я это сделал:

df['index_col'] = df.index

Затем вы можете отсортировать по новому столбцу индекса, если хотите.