【Python図解】Pandas DataFrameでデータの削除方法(drop( )メソッド)を解説!

Pythonを使っていてこんな悩みはありませんか?

「Pandas DataFrameで特定のデータ削除をしたい、、しかしやり方がわからない。」
「Pandas DataFrameで行や列を指定してデータ削除をしたい、、しかしやり方がわからない。」

そのお悩み解決します。
結論をお話しするとPandasのdrop( )メソッドを使用することでデータを削除できます。

今回は、下記のようなPandas dataframe(以下df)を用いて、データを削除する方法を解説します。

それでは解説していきます。

列を指定してデータを削除する方法

今回は、dfの「’Age’」列を削除します。
下記のようにdrop( )メソッドの中のcolumns = [ ]の中に’カラム名’を記載すればOKです。
‘Age’列が削除できていることが確認できます。(下右図)

df.drop(columns = ['Age'])

ここでdrop( )メソッドを使う注意点を説明します。

【注意点】「データ削除後のdf」をdfとして更新する必要がある

df.drop(columns = [‘Age’])の後にdfを出力しても、dfは更新されていないため、dfを出力しても’Age’列が削除されていません。(下左図)
「dropした後のdf」を再度dfとすれば、dfが更新されるため、「データ削除後のdf」をdfとして保存できます。つまり「df = (データ削除後のdf)」することで、「データ削除後のdf」がdfとなります。(下右図)

df = df.drop(columns = ['Age'])
df

drop()メソッドでデータを消去した場合、「df = (データ削除後のdf)」とdfを更新するのを忘れないようにしましょう❗️

続いて行を指定して削除する方法を解説します。

dfの行を指定して削除する方法

今回はdfの1行目と2行目を削除します。
df.drop(index = [ ])の中に1,2を記載すればOKです。
1行目と2行目がdfから削除されていることが確認できます。

df.drop(index = [1,2])

また列を削除する場合と同様に、「df = (データ削除後のdf)」とdfを更新するのを忘れないようにしましょう。

行を削除後は、行番号が連番ではなくなるので、Pandasのreset_index( )メソッドを使って、行番号をリセットするのを忘れないようにしてください。
Pandasのreset_index( )については下記記事で解説していますので是非ご覧ください。

【Python図解】Pandas DataFrameでindexをリセットする方法(reset_index()メソッド)を解説!
Pythonのpandas DataFrameでこんな悩みはありませんか? 「Pandas DataFrameでデータを削除したらindex番号が連番じゃなくなった、、しかしリセットの仕方がわからない。」 「Pandas DataFrame...

今回はPandas DataFrameでデータを削除する方法を解説しました。
pythonを活用したデータサイエンスでは、データの削除は実施する機会が頻繁にあるので、是非本記事を通してマスターしていただければと思います。

この記事が少しでも皆さんのお役に立てれば幸いです。

また、pandasのメソッドは量が多く、都度調べるのが面倒なので下記記事でまとめてみました。
ブックマークして調べる手間を減らしてもらえればと思います。

【Python図解】Pandasのメソッド解説記事まとめ
今回の記事では、私がpython初学者だった時に感じた悩みを解決する記事を書いています。 「Pandasのメソッドの解説記事は多いが、全体像がわからない、、」 「Pandasのメソッドは非常に多く調べるのが大変なので、情報を集約して欲しい、...

皆さんの勉強が少しでも進むことを願っています。

タイトルとURLをコピーしました