1. メソッドチェーンで自分自身を参照したいことがある。
メソッドチェーンの途中で自分自身を参照したい場合がある。
例えば現状の列名一覧を取得する場合。
このような場合はpandas.DataFrame.pipeを使用することで実現できる。
2. 実例
メソッドチェーン内で列名を変換する。
既存の列名のprefixに’New_’を追加する。
pipeの中でラムダ文とset_axisを使用しています。
プログラムは下記のようになります。
import pandas as pd
from sklearn import datasets
boston = datasets.load_boston()
boston_df = pd.DataFrame(
boston.data,
columns=boston.feature_names,
)
new_boston_df = (
boston_df
.pipe(
lambda df: (
df.set_axis(
[
'New_' + c
for c
in df.columns
],
axis=1,
inplace=False,
)
)
)
)