Вы можете использовать следующий синтаксис для сброса индекса в pandas DataFrame:
df.reset_index(drop= True , inplace= True )
Обратите внимание на следующие аргументы:
- drop : Указание True запрещает pandas сохранять исходный индекс в виде столбца в DataFrame.
- inplace : Указание True позволяет pandas заменить индекс в исходном DataFrame вместо создания копии DataFrame.
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1: сбросить индекс и удалить старый индекс
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd
#define DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]},
index=[0, 4, 3, 5, 2, 1, 7, 6])
#view DataFrame
print(df)
points assists rebounds
0 25 5 11
4 12 7 8
3 15 7 10
5 14 9 6
2 19 12 6
1 23 9 5
7 25 9 9
6 29 4 12
В следующем коде показано, как сбросить индекс DataFrame и полностью удалить старый индекс:
#reset index
df.reset_index(drop= True , inplace= True )
#view updated DataFrame
print(df)
points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12
Обратите внимание, что индекс был сброшен, и значения в индексе теперь находятся в диапазоне от 0 до 7.
Пример 2: сбросить индекс и сохранить старый индекс как столбец
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd
#define DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]},
index=['A', 'C', 'D', 'B', 'E', 'G', 'F', 'H'])
#view DataFrame
print(df)
points assists rebounds
A 25 5 11
C 12 7 8
D 15 7 10
B 14 9 6
E 19 12 6
G 23 9 5
F 25 9 9
H 29 4 12
В следующем коде показано, как сбросить индекс DataFrame и сохранить старый индекс в виде столбца в DataFrame:
#reset index and retain old index as a column
df.reset_index(inplace= True )
#view updated DataFrame
print(df)
index points assists rebounds
0 A 25 5 11
1 C 12 7 8
2 D 15 7 10
3 B 14 9 6
4 E 19 12 6
5 G 23 9 5
6 F 25 9 9
7 H 29 4 12
Обратите внимание, что индекс был сброшен, и значения в индексе теперь находятся в диапазоне от 0 до 7.
Также обратите внимание, что старый индекс (с буквами) сохраняется как новый столбец в DataFrame под названием «индекс».
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Как преобразовать индекс в столбец в Pandas
Как установить столбец в качестве индекса в Pandas
Как переименовать индекс в Pandas