Heim > Backend-Entwicklung > Python-Tutorial > Loc vs. Iloc in Pandas: Wann sollte ich beide zum Schneiden verwenden?

Loc vs. Iloc in Pandas: Wann sollte ich beide zum Schneiden verwenden?

Susan Sarandon
Freigeben: 2024-12-24 10:41:28
Original
163 Leute haben es durchsucht

Loc vs. Iloc in Pandas: When Should I Use Each for Slicing?

Loc vs. Iloc Slicing in Pandas

Loc und iloc sind zwei häufig verwendete Slicing-Methoden in Pandas, die Flexibilität bei der Auswahl von Zeilen und bieten Spalten aus einem DataFrame. Es kann jedoch verwirrend sein, ihre subtilen Unterschiede zu verstehen.

Hauptunterschied: Labels vs. Standorte

Der Hauptunterschied zwischen loc und iloc liegt in der Art der Indizierung, die sie verwenden :

  • Loc: Funktioniert weiter Beschriftungen, insbesondere die tatsächlichen Werte im Index oder in den Spaltenbeschriftungen.
  • Iloc: Arbeitet an Ganzzahlpositionen und stellt die Position von Zeilen oder dar Spalten in der DataFrame.

Beispiele:

Betrachten Sie einen DataFrame mit einem nicht monotonen Ganzzahlindex:

df = pd.DataFrame({
    'a': [1, 2, 3],
    'b': [4, 5, 6],
    'c': [7, 8, 9]
}, index=[0, 2, 4])
Nach dem Login kopieren

Loc:

  • df.loc[0] greift auf die Zeile mit Index zu Label 0, unabhängig von seinem Standort.
  • df.loc[0:1] ruft die Zeilen mit den Indexlabels 0 und 1 ab.

Iloc:

  • df.iloc[0] ruft die Zeile an Indexposition 0 ab, unabhängig von ihrem Index label.
  • df.iloc[0:1] greift nur auf die erste Zeile zu, da es Indexpositionen als ganze Zahlen angibt.

Hauptunterschiede in der Verwendung:

Feature Loc Iloc
Indexing Labels Integer locations
Slicing Inclusive (by default) Exclusive (by default)
Out-of-bounds behavior KeyError IndexError
Negative indexing Supported Supported for final row only
Boolean masking NotImplementedError Supports boolean mask
Callable indexing Function applied to index Function applied to row or column

Wann sollte Loc vs. verwendet werden? Iloc:

  • Verwenden Sie loc, wenn Sie eine Indizierung basierend auf Bezeichnungen wie bestimmten Namen oder Kategorien benötigen.
  • Bevorzugen Sie ilocfür ganzzahlbasierte Indizierung, insbesondere für Slicing-Vorgänge mit klaren Start- und Endpunkten.
  • Vermeiden iloc für boolesche Maskierungsoperationen oder Indizierung basierend auf logischen Bedingungen.

Das obige ist der detaillierte Inhalt vonLoc vs. Iloc in Pandas: Wann sollte ich beide zum Schneiden verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage