2017-01-25 1 views

Antwort

3

Kurze Erklärung

Betrachten Datenrahmen df

df = pd.DataFrame(
    np.arange(16).reshape(4, 4), 
    list('wxyz'), list('abcd')) 

    a b c d 
w 0 1 2 3 
x 4 5 6 7 
y 8 9 10 11 
z 12 13 14 15 
  • iloc ist Ordinalposition basierte Indexierung

    df.iloc[[0, 3], [1, 2]] 
    
        b c 
    w 1 2 
    z 13 14 
    
  • loc ist Label basierte Indexierung

    df.loc[['z', 'x'], ['b', 'c']] 
    
        b c 
    z 13 14 
    x 5 6 
    
  • ix versucht smart und herauszufinden, was Sie brauchen, ist aber manchmal verwirrend und vor allem wird auslaufen und sollte nicht verwendet werden !!!

3

können Sie docs überprüfen:

ix gemischte integer und Label Based Access unterstützt. Es ist hauptsächlich labelbasiert, wird aber auf den ganzzahligen Positionszugriff zurückfallen, wenn die entsprechende Achse nicht vom Integer-Typ ist. .ix ist das allgemeinste und unterstützt alle Eingänge in .loc und .iloc. .ix unterstützt auch Gleitkomma-Labelschemas. .ix ist besonders nützlich, wenn es um gemischte positions- und labelbasierte hierarchische Indizes geht.

Wenn jedoch eine ganze Zahl Achse basiert, nur Label basierte Zugriffs und nicht die Positions Zugriff wird unterstützt. Daher ist es in solchen Fällen normalerweise besser, explizit zu sein und .iloc oder .loc zu verwenden.

Verwandte Themen