Warum erlaubt Pandas.Series eine Liste als Indexbezeichnung (z. B. ['A'], 'B', 'C'])?
Posted: 21 May 2025, 15:19
Ich habe versehentlich eine pandas.Series als Teil des Index erstellt und zu meiner Überraschung ohne Fehler funktioniert:
import pandas as pd
series = pd.Series([1, 2, 3], index=[['A'], 'B', 'C'])
print(series)
print(type(list(series.index)[0])) # outputs:
< /code>
Dies erstellt ein Serienobjekt, bei dem der erste Indexwert eine Python -Liste ist (liste), was mich überrascht hat, weil ich angenommen habe, dass alle Indexbezeichnungen in einer Pandas -Serie Hash -Typen (wie Zeichenfolgen, Zahlen oder Tupel) sein müssen. Listen, die veränderlich sind, sind nicht hashabel-daher habe ich einen Fehler erwartet.
Ich erhalte TypeError: Nicht abhängiger Typ: 'List'
Fragen:
import pandas as pd
series = pd.Series([1, 2, 3], index=[['A'], 'B', 'C'])
print(series)
print(type(list(series.index)[0])) # outputs:
< /code>
Dies erstellt ein Serienobjekt, bei dem der erste Indexwert eine Python -Liste ist (liste
Code: Select all
['A']
Code: Select all
series.loc[['A']]
Fragen:
- Warum erlaubt Pandas eine Liste als Index. intern?