Pandas DataFrame Index zurücksetzen
-
Pandas DataFrame
reset_index()
Methode -
Index eines DataFrame mit der Methode
pandas.DataFrame.reset_index()
zurücksetzen
Dieses Tutorial erklärt, wie wir den Index in Pandas DataFrame mit pandas.DataFrame.reset_index()
zurücksetzen können. Die Methode reset_index()
setzt den Index des DataFrame auf den Standardindex mit Zahlen von 0
bis (Anzahl der Zeilen im DataFrame-1)
.
Pandas DataFrame reset_index()
Methode
Syntax
DataFrame.reset_index(level=None, drop=False, inplace=False, col_level=0, col_fill="")
Index eines DataFrame mit der Methode pandas.DataFrame.reset_index()
zurücksetzen
import pandas as pd
roll_no = [501, 502, 503, 504, 505]
student_df = pd.DataFrame(
{
"Name": ["Alice", "Steven", "Neesham", "Chris", "Alice"],
"Age": [17, 20, 18, 21, 15],
"City": ["New York", "Portland", "Boston", "Seattle", "Austin"],
"Grade": ["A", "B-", "B+", "A-", "A"],
},
index=roll_no,
)
print(student_df)
Ausgabe:
Name Age City Grade
501 Alice 17 New York A
502 Steven 20 Portland B-
503 Neesham 18 Boston B+
504 Chris 21 Seattle A-
505 Alice 15 Austin A
Angenommen, wir haben einen DataFrame mit fünf Zeilen und vier Spalten, wie in der Ausgabe dargestellt. Wir haben auch einen Index im DataFrame gesetzt.
Index eines DataFrame zurücksetzen und dabei den Anfangsindex des DataFrame als Spalte beibehalten
import pandas as pd
roll_no = [501, 502, 503, 504, 505]
student_df = pd.DataFrame(
{
"Name": ["Alice", "Steven", "Neesham", "Chris", "Alice"],
"Age": [17, 20, 18, 21, 15],
"City": ["New York", "Portland", "Boston", "Seattle", "Austin"],
"Grade": ["A", "B-", "B+", "A-", "A"],
},
index=roll_no,
)
print("Initial DataFrame:")
print(student_df)
print("")
print("DataFrame after reset_index:")
student_df.reset_index(inplace=True, drop=False)
print(student_df)
Ausgabe:
Initial DataFrame:
Name Age City Grade
501 Alice 17 New York A
502 Steven 20 Portland B-
503 Neesham 18 Boston B+
504 Chris 21 Seattle A-
505 Alice 15 Austin A
DataFrame after reset_index:
index Name Age City Grade
0 501 Alice 17 New York A
1 502 Steven 20 Portland B-
2 503 Neesham 18 Boston B+
3 504 Chris 21 Seattle A-
4 505 Alice 15 Austin A
Es wird der Index des DataFrame student_df
auf den Standardindex zurückgesetzt. Das inplace=True
macht die Änderung im ursprünglichen DataFrame selbst. Wenn wir drop=False
verwenden, wird der ursprüngliche Index als Spalte im DataFrame platziert, nachdem wir die Methode reset_index()
verwendet haben.
Index eines DataFrame zurücksetzen Entfernen des Anfangsindex eines DataFrame
import pandas as pd
roll_no = [501, 502, 503, 504, 505]
student_df = pd.DataFrame(
{
"Name": ["Alice", "Steven", "Neesham", "Chris", "Alice"],
"Age": [17, 20, 18, 21, 15],
"City": ["New York", "Portland", "Boston", "Seattle", "Austin"],
"Grade": ["A", "B-", "B+", "A-", "A"],
},
index=roll_no,
)
print("Initial DataFrame:")
print(student_df)
print("")
print("DataFrame after reset_index:")
student_df.reset_index(inplace=True, drop=True)
print(student_df)
Ausgabe:
Initial DataFrame:
Name Age City Grade
501 Alice 17 New York A
502 Steven 20 Portland B-
503 Neesham 18 Boston B+
504 Chris 21 Seattle A-
505 Alice 15 Austin A
DataFrame after reset_index:
Name Age City Grade
0 Alice 17 New York A
1 Steven 20 Portland B-
2 Neesham 18 Boston B+
3 Chris 21 Seattle A-
4 Alice 15 Austin A
Es wird der Index des DataFrame student_df
auf den Standardindex zurückgesetzt. Da wir in der Methode reset_index()
drop=True
gesetzt haben, wird der Anfangsindex aus dem DataFrame entfernt.
Index eines DataFrame nach dem Löschen von Zeilen zurücksetzen
import pandas as pd
roll_no = [501, 502, 503, 504, 505]
student_df = pd.DataFrame(
{
"Name": ["Alice", "Steven", "Neesham", "Chris", "Alice"],
"Age": [17, 20, 18, 21, 15],
"City": ["New York", "Portland", "Boston", "Seattle", "Austin"],
"Grade": ["A", "B-", "B+", "A-", "A"],
}
)
student_df.drop([2, 3], inplace=True)
print("Initial DataFrame:")
print(student_df)
print("")
student_df.reset_index(inplace=True, drop=True)
print("DataFrame after reset_index:")
print(student_df)
Ausgabe:
Initial DataFrame:
Name Age City Grade
0 Alice 17 New York A
1 Steven 20 Portland B-
4 Alice 15 Austin A
DataFrame after reset_index:
Name Age City Grade
0 Alice 17 New York A
1 Steven 20 Portland B-
2 Alice 15 Austin A
Wie wir in der Ausgabe sehen können, haben wir nach dem Löschen von Zeilen fehlende Indizes. In solchen Fällen können wir die Methode reset_index()
verwenden, um den Index ohne fehlende Werte zu verwenden.
Wenn wir möchten, dass der ursprüngliche Index als Spalte des DataFrame platziert wird, können wir drop=False
in der Methode reset_index()
verwenden.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn