pythonでpandasでdictを使った部分置換


広告は適当。

こんなソースを見かけて、なるほどねえと思ったのでメモ。
多分pandasを使いこなしてる人は息をするように使えるだろうけど、自分がバブバブしながらプログラム読んでて、一瞬理解できなかったのでメモ。

# 製品名の辞書

product_name_replace:

  - { name: ‘製品名’, short_name: ‘製品略名' }

  - { name: ‘製品名2’, short_name: ‘製品略名2' }


# 製品名の変換処理

for replace_dict in product_name_replace:

    name = replace_dict.get('name')

    short_name = replace_dict.get('short_name')

    df[‘product_name’] = df.product_name.str.replace(name, short_name)

こうすれば、製品名にプラス文字があったとしても、その部分を引き継いで製品名だけ置換できる。

例)
製品名=なんだか凄いハム、略名=H

データ例)
なんだか凄いハム(100g) → H(100g)

replace便利。