らふのプログラミングメモ

プログラミングメモです。

Python:pandasのDataFrameにデータを削除してみる

DataFrameにデータを入れることができたので、
次はデータの削除をまとめていきたいと思います。

下準備

DataFrameに以下のデータを入れておきます。

name age add
0 aaa 18 Tokyo
1 bbb 20 Osaka
2 ccc 22 Nagoya
import pandas as pd

data = {"name":["aaa","bbb","ccc"],"age":["18","20","22"],"add":["Tokyo","Osaka","Nagoya"]}

df = pd.DataFrame(data)

これでdfにデータが入りました。

"age"の列を削除してみよう。

削除を行うにはdropを使います。

df_new = df.drop("age",axis = "columns")

これで、age列を削除したものをdf_newというDataFrameにいれました。
(dfのage列は削除されていません。元のままです)

axisとはDataFrameの向きを指定するのに使用します。
axis = 0の場合はの向き(指定しなければデフォルトはこちら)
axis = 1 もしくはaxis = "columns"の場合はの向きです。

df_newのイメージ図

name add
0 aaa Tokyo
1 bbb Osaka
2 ccc Nagoya

bbbさんの情報を削除してみよう。

bbbさんのデータはインデックスが1なので、
インデックスラベル(今回の場合は「1」)を指定すれば削除されます。

df_new2 = df.drop(1)

df_new2のイメージ図

name age add
0 aaa 18 Tokyo
2 ccc 22 Nagoya

複数の行や列を削除してみよう。

  • 複数行削除の場合

さきほどはbbbさんのみを削除しましたが、
次はaaaさんとbbbさんの二人のデータを削除してみましょう。

df_new3 = df.drop([0,1])

df_new2のイメージ図

name age add
2 ccc 22 Nagoya
  • 列の複数列削除の場合

次に、ageとaddの列を削除してみましょう。

df_new4 = df.drop(["age","add"],axis = "columns")

df_new4のイメージ図

name
0 aaa
1 bbb
2 ccc

dropの引数の中にinplaceというのがあります。
こちらについては次回にまとめたいと思います。

rafu.hatenablog.jp

<最終更新日:2021/08/14>

2021/08/14 投稿