Page 1 of 1

Warum erlaubt Pandas.Series eine Liste als Indexbezeichnung (z. B. ['A'], 'B', 'C'])?

Posted: 21 May 2025, 15:19
by Anonymous
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

Code: Select all

['A']
), 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.

Code: Select all

series.loc[['A']]
Ich erhalte TypeError: Nicht abhängiger Typ: 'List'
Fragen:
  • Warum erlaubt Pandas eine Liste als Index. intern?
Ich verwende Pandas Version 2.2.3.>