Pandas DataFrame 列を削除する方法

胡金庫 2023年1月30日
  1. DataFrame 列を削除する del メソッド
  2. DataFrame 列を削除する df.drop メソッド
  3. Pandas の DataFrame 列を削除する df.pop メソッド
Pandas DataFrame 列を削除する方法

この記事では、Pandas の DataFrame 列を削除するさまざまな方法を紹介します。

  • del メソッド
  • df.drop メソッド
  • df.pop メソッド

この記事では、同じ DataFrame を使用して異なるメソッドを示します。

>>> from pandas import DataFrame
>>> df = DataFrame.from_items(
    [('Alfa', [1, 2, 3]), 
     ('Bravo', [4, 5, 6]), 
     ('Charlie', [7,8, 9])], 
    orient='index', 
    columns=['A', 'B', 'C'])
>>> df
         A  B  C
Alfa     1  2  3
Bravo    4  5  6
Charlie  7  8  9

DataFrame 列を削除する del メソッド

>>> df
         A  B  C
Alfa     1  2  3
Bravo    4  5  6
Charlie  7  8  9
>>> del df['A']
>>> df
         B  C
Alfa     2  3
Bravo    5  6
Charlie  8  9

del df['col_name'] は、名前が col_name である DataFrame 列を削除します。

この del メソッドの制限は、一度に 1つの列しか削除できないことです。

DataFrame 列を削除する df.drop メソッド

drop(
    self,
    labels=None,
    axis=0,
    index=None,
    columns=None,
    level=None,
    inplace=False,
    errors="raise",
)

drop メソッドはドロップ、つまり行または列から指定された labels を削除または削除します。

labels は、ドロップする単一のラベルまたはリストのようなインデックスまたは列ラベルです。

axis は、インデックス/行(0 または index)または列(1 または columns)からラベルをドロップするかどうかを指定します。

indexcolumns は軸を指定する代わりになります。drop(labels, axis=0)drop(index=labels) に等しく、drop(labels, axis=1)drop(column=labels) に等しくなります。

inplace は、inplace = True の場合に DataFrame がその場で変更されることを指定します。そうでない場合、元の DataFrame が変更されていない新しい DataFrame を返します。

>>> df
         A  B  C
Alfa     1  2  3
Bravo    4  5  6
Charlie  7  8  9
>>> df.drop(["B", "C"], axis=1)
         A
Alfa     1
Bravo    4
Charlie  7

## or equally
>>> df.drop(columns=["B", "C"])
         A
Alfa     1
Bravo    4
Charlie  7

## or drop the columns in place
>>> df.drop(columns=["B", "C"],inplace=True)
>>> df
         A
Alfa     1
Bravo    4
Charlie  7

Pandas の DataFrame 列を削除する df.pop メソッド

df.pop(item)

DataFrame の pop メソッドはアイテムを返し、DataFrame から削除します。

>>> df
         A  B  C
Alfa     1  2  3
Bravo    4  5  6
Charlie  7  8  9
>>> df.pop("A")
Alfa       1
Bravo      4
Charlie    7
Name: A, dtype: int64
>>> df
         B  C
Alfa     2  3
Bravo    5  6
Charlie  8  9        

DataFrame データは、上記のようにその場で変更されます。

著者: 胡金庫
胡金庫 avatar 胡金庫 avatar

DelftStack.comの創設者です。Jinku はロボティクスと自動車産業で8年以上働いています。自動テスト、リモートサーバーからのデータ収集、耐久テストからのレポート作成が必要となったとき、彼はコーディングスキルを磨きました。彼は電気/電子工学のバックグラウンドを持っていますが、組み込みエレクトロニクス、組み込みプログラミング、フロントエンド/バックエンドプログラミングへの関心を広げています。

LinkedIn Facebook

関連記事 - Pandas DataFrame

関連記事 - Pandas DataFrame Column