Pandas DataFrames sind ein Eckpfeiler der Datenmanipulation in Python. Ihre Indizes enthalten oft entscheidende Informationen, die Sie möglicherweise als Spalten integrieren möchten. Dieser Artikel beschreibt verschiedene Techniken zur Umwandlung des Index eines DataFrames in eine Spalte und umgekehrt.
Inhaltsverzeichnis:
- Index als neue Spalte hinzufügen
- Umbenennen der Indexspalte nach der Konvertierung
- Umwandlung einer Spalte in den Index
- Arbeiten mit MultiIndex-Strukturen
1. Index als neue Spalte hinzufügen
Die einfachste Methode verwendet das Attribut .index
:
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
df['index_col'] = df.index
print(df)
Dies weist die Indexwerte direkt einer neuen Spalte namens ‚index_col‘ zu.
2. Umbenennen der Indexspalte nach der Konvertierung
Die Methode reset_index()
wandelt den Index in eine Spalte um, standardmäßig in ‚index‘. Verwenden Sie rename_axis()
für benutzerdefinierte Benennung:
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
df = df.rename_axis('original_index').reset_index()
print(df)
Dies benennt die resultierende Indexspalte in ‚original_index‘ um.
3. Umwandlung einer Spalte in den Index
Um die umgekehrte Operation durchzuführen, verwenden Sie set_index()
:
import pandas as pd
data = {'index_col': [0, 1, 2], 'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
df = df.set_index('index_col')
print(df)
Dies setzt ‚index_col‘ als neuen Index des DataFrames.
4. Arbeiten mit MultiIndex-Strukturen
Für komplexere Szenarien mit mehreren Indexebenen ist ein MultiIndex vorteilhaft. Erstellen wir einen MultiIndex aus bestehenden Spalten und setzen ihn dann zurück, um die Ebenen als Spalten hinzuzufügen:
import pandas as pd
data = {'level1': ['A', 'A', 'B', 'B'], 'level2': ['X', 'Y', 'X', 'Y'], 'value': [1, 2, 3, 4]}
df = pd.DataFrame(data)
df = df.set_index(['level1', 'level2']).reset_index()
print(df)
Dies erstellt und wandelt dann einen MultiIndex in separate Spalten um.
Diese Techniken bieten Vielseitigkeit bei der Verwaltung von DataFrame-Indizes und ermöglichen die nahtlose Integration von Indexinformationen als Spalten oder umgekehrt, zugeschnitten auf Ihre spezifischen Anforderungen der Datenanalyse.