So löschen Sie ein Tabellenelement in einem Pandas DataFrame. Eine Zusammenfassung der Optionen der Drop-Methode basierend auf der tatsächlichen Verwendung.
Es ist kompliziert, weil es die gleiche Verarbeitung mit unterschiedlichen Beschreibungen gibt, Sie können eine Spalte löschen, indem Sie sich an "columns = label" und "index = label" erinnern.
Klicken Sie hier für eine Liste der Optionen ▶ [Schnellreferenztabelle für Drop-Methodenoptionsliste](Schnellreferenztabelle für Drop-Methodenoptionen Nr. 1)
Möglichkeit | Beschreibungsbeispiel | Inhalt |
---|---|---|
(columns=label) | df.drop(columns=['x', 'y']) | Spalte x,Löschen Sie y |
(index=label) | df.drop(index=['A', 'B'] | Linie A.,Löschen B. |
(labe) | df.drop(['A', 'B']) | Linie A.,Löschen B. |
(label, axis='index') | df.drop(['A', 'B'], axis='index') | Linie A.,Löschen B. |
(label, axis=1) | df.drop(['x', 'y'], axis=1) | Spalte x,Löschen Sie y |
(label, axis='columns') | df.drop(['x', 'y'], axis='columns') | Spalte x,Löschen Sie y |
(errors='ignore') | df.drop(['aaa'], axis='columns', errors='ignore') | Fehler ignorieren |
(inplace=True) | df.drop(['A', 'B'], inplace=True) | Überschreiben |
Tabellencode
import pandas as pd
listA = ['AAA', 'BBB', 'CCC', 'DDD']
listB = ['EEE', 'FFF', 'GGG', 'HHH']
listC = ['III', 'JJJ', 'KKK', 'LLL']
listD = ['MMM', 'NNN', 'OOO', 'PPP']
df = pd.DataFrame(listA)
df[1] = listB
df[2] = listC
df[3] = listD
df.columns = ['aaa', 'bbb', 'ccc', 'ddd']
df.index = [111,222,333,444]
df
①drop(label, axis) ②drop(index=label) ③drop(columns=label)
** Grundtyp **
df.drop(label, axis=A)
└ "df": Tabellendaten (DataFrame-Typ)
└ "drop ()": Drop-Methode
└ "label": Zu löschender Zeilen- / Spaltenname
└ "Achse = A": Geben Sie Zeile oder Spalte mit A an
** ▼ Punkt **
** ▼ So legen Sie 4 Achsen fest **
Wert | Beschreibungsbeispiel | Inhalt |
---|---|---|
0 | axis=0(Optional) | 行名で指定。デフォルト。Optional |
1 | axis=1 | Wird durch den Spaltennamen angegeben |
index | axis='index' | Angegeben durch den Zeilennamen |
columns | axis='columns' | Wird durch den Spaltennamen angegeben |
Die folgenden zwei Achsen (drei einschließlich Auslassungen) können beschrieben werden.
① Achse = 0 (optional) ②axis='index'
(1-1) axis=0
df.drop([label1,label2,,,], axis=0)
df.drop([label1,label2,,,])
Auch wenn Achse = 0 ** weggelassen ** ist, wird die gleiche Verarbeitung durchgeführt.
** ▼ Geben Sie nur eine Spalte an **
(axis=0) weggelassen
df.drop(333)
#Ausgabe
aaa bbb ccc ddd
111 AAA EEE III MMM
222 BBB FFF JJJ NNN
444 DDD HHH LLL PPP
(axis=0) Keine Auslassung
df.drop(333, axis=0)
#Ausgabe
aaa bbb ccc ddd
111 AAA EEE III MMM
222 BBB FFF JJJ NNN
444 DDD HHH LLL PPP
Mehrere Spaltennamen
df.drop([111,333])
#Ausgabe
aaa bbb ccc ddd
222 BBB FFF JJJ NNN
444 DDD HHH LLL PPP
df.drop([label1,label2,,,], axis='index')
axis='index'
df.drop([111,333], axis='index')
#Ausgabe
aaa bbb ccc ddd
222 BBB FFF JJJ NNN
444 DDD HHH LLL PPP
①axis=1 ②axis='columns'
(1-3) axis=1
df.drop([label1,label2,,,], axis=1)
└ "1" der Achse = 1 zeigt auf die Zeile des Spaltennamens.
** ▼ Geben Sie nur eine Spalte an ** Bei einer Spalte wird dieselbe Verarbeitung ausgeführt, auch wenn kein [] vorhanden ist.
df.drop(['AAA'], axis=1)
df.drop('AAA', axis=1)
(axis=1)
df.drop('bbb', axis=1)
#Ausgabe
aaa ccc ddd
111 AAA III MMM
222 BBB JJJ NNN
333 CCC KKK OOO
444 DDD LLL PPP
Mehrere Spaltennamen
df.drop(['bbb','ddd'], axis=1)
#Ausgabe
aaa ccc
111 AAA III
222 BBB JJJ
333 CCC KKK
444 DDD LLL
df.drop([label1,label2,,,], axis='columns')
axis='columns'
df.drop(['bbb','ddd'], axis='columns')
#Ausgabe
aaa ccc
111 AAA III
222 BBB JJJ
333 CCC KKK
444 DDD LLL
df.drop(index=label)
└ Beschreiben Sie den zu löschenden Zeilennamen in "label".
index=label
df.drop(index=[222,444])
#Ausgabe
aaa bbb ccc ddd
111 AAA EEE III MMM
333 CCC GGG KKK OOO
Der Vorgang ist der gleiche wie in den folgenden drei.
df.drop(label)
df.drop(label, axis=0)
df.drop(label, axis='index')
df.drop(columns=label)
└ "label": Beschreiben Sie den Spaltennamen, den Sie löschen möchten
index=label
df.drop(columns=['ddd','bbb'])
#Ausgabe
aaa ccc
111 AAA III
222 BBB JJJ
333 CCC KKK
444 DDD LLL
Gleich wie die folgenden beiden.
df.drop(label, axis=1)
df.drop(label, axis='columns')
Standardmäßig wird ein neues Objekt erstellt, ohne die ursprüngliche Tabelle zu ändern. (Es kann wiederhergestellt werden, auch wenn es versehentlich gelöscht wurde.)
Option zum Deaktivieren dieser Funktion.
inplace=True
└ Standard ist "False"
Überschreiben zulassen
df.drop(columns=['ddd','bbb'], inplace=True)
df
#Ausgabe
aaa ccc
111 AAA III
222 BBB JJJ
333 CCC KKK
444 DDD LLL
Die ursprüngliche Tabelle (df) wurde neu geschrieben.
Nicht vorhandene Spalte löschen
df.drop(columns=['xxx'], errors='ignore')
Es wird nichts angezeigt.
Wenn es keine Beschreibung von "error = 'ignore'" gibt, wird diese wie folgt angezeigt. ⇒「KeyError: "['xxx'] not found in axis"」
Recommended Posts