Python前処理講座

【pandas】map:シリーズの行処理【繰り返し処理】


こんにちは,shun(@datasciencemore)です!!

今回はmapについて学習していきます.

mapは,シリーズの各行に対して関数を適用するメソッドです.

イメージとしてはこのようになります.

シリーズと関数をmapに適用すると,シリーズの各行に関数を適用した結果が出力されます.

これだけだとよくわからないと思うので,具体例で確認してみましょう.

0.準備

1.mapの基本

例えば,以下のようなシリーズと関数を考えます.

シリーズ:df(ダイヤモンドデータ)のcolor列

関数:EとIであればそのままで,EとI以外であればnot_E_Iと出力する.

このシリーズと関数をmapに適用すると,以下に示すシリーズを出力します.

2.mapとassign

mapはassignと相性がよく,併用することが多いです.

例えば,このように条件が複数あるような処理についてもmapとassignを併用すれば,比較的簡単にコーディングすることができます.

今回は,assignを使用して先程の処理(EとIであればそのままで,EとI以外であればnot_E_Iと出力する.)によって得たシリーズを,dfの新しい列としてあげましょう.

3.mapと辞書

mapには,少し特別な処理があります.

基本的にmapは関数を適用するのですが,関数ではなく,辞書を適用することもできます.

その場合,辞書のキーに変換前の文字列を,辞書のデータに変換後の文字列を設定し,mapを適用します.

例えばこの例だと

key1がのdata1に

kye2がdata2に

kye3がdata3に

変換されます.

このやり方も時々使用するので覚えておくと便利です.

まとめ

今回はmapについて学習してきました.

  1. mapの基本
  2. mapとassign
  3. mapと辞書

mapは最初は概念を理解するのが難しいですが,慣れるとfor文よりも楽にコーディングできて非常に便利です.

使いこなせるように練習しましょう!

それでは,お疲れさまでした!!

次回

【pandas】apply:データフレームの行処理【繰り返し処理】

こんにちは,shun(@datasciencemore)です!! 今回はapplyについて学習していきます. applyは,データフレームの各行に対して関数を適用するメソッドです. イメージとしてはこ ...

続きを見る

-Python前処理講座