Python でデータ解析を行うための高性能なライブラリとして、これまでも pandas の使い方については説明してきました。
ファイルからデータフレームでデータを読み込むと、いろんな列・行を読み込むので、読み込んだ処理をしてからデータを削除することもあります。今回はデータを読み込んだ後に列や行を操作して、必要なデータを残す処理に使える drop() を説明します。
インストール
pandas ライブラリを利用しますので、インストールされていない場合には、pip install pandas を実行しておく必要があります。
pandas drop 関数の基本的な使い方
データにはこちらの記事で利用した順位表のデータ(juni.tsv)を利用します。
サンプルソース
drop() は名前の通り指定した列や行を削除するために利用できます。そのため、ここでは順位表の行(indexで各チームを指定する)や列を指定して使ってみます。
- 先頭では juni.tsv を読み込み、いくつかの列だけ残しました。
- dropを2つの方法(新しくデータフレームを作成する、データフレームを直接変更する)で試します。
- 1つ目の方法では、インデックスを指定して特定のチーム(行に相当)を削除します。行方向がデフォルトになっているので、特別な指定は必要ありませんが、axis=0がデフォルトです(axis=1は2つ目の軸になります)。
- 2つ目の方法で、読み込んだdfの上で直接データを編集するため、inplace=True を指定しました。
- 2つ目の方法では、複数の行を同時に削除するために、listでインデックスを指定しました。
実行結果
実行結果になります。それぞれ新しいデータフレームと、元のデータフレームが編集された様子が確認できます。
列方向でデータを削除する場合のサンプルソース
次にほとんど同じサンプルソースですが、行方向ではなく列方向のデータ処理を試します。axis=1を使う以外は行方向とほとんど同じ実装でデータを編集できます。
実行結果
実行結果です。元のデータ df と新しく作った df2、dfが上書きされる様子が確認できます。
スポンサーリンク
大規模なデータフレームを処理する際、データの追加や加工だけではなく削除も重要になります。dropは使いやすい関数だと思いますので、是非利用してみてください。