Pandas DataFrame から列を削除する 質問する

Pandas DataFrame から列を削除する 質問する

DataFrame 内の列を削除するには、次のようにします。

del df['column_name']

しかし、なぜ次のものを使用できないのでしょうか?

del df.column_name

経由でシリーズにアクセスできるためdf.column_name、これが機能すると期待していました。

ベストアンサー1

Pandasでこれを行う最良の方法は、drop:

df = df.drop('column_name', axis=1)

1番号です(行の場合は 、列の場合は )。01

または、メソッドは軸を指定する代わりに/キーワードdrop()を受け入れます。つまり、次のように実行できます。indexcolumns

df = df.drop(columns=['column_nameA', 'column_nameB'])

再割り当てせずに列を削除するには、df次のようにします。

df.drop('column_name', axis=1, inplace=True)

最後に、列ラベルではなく列番号でドロップするには、次のようにして、たとえば 1 列目、2 列目、4 列目を削除してみてください。

df = df.drop(df.columns[[0, 1, 3]], axis=1)  # df.columns is zero-based pd.Index

列の「テキスト」構文も使用します。

df.drop(['column_nameA', 'column_nameB'], axis=1, inplace=True)

おすすめ記事