Pandas関数について -ビニング処理(ビン分割)
pandasでビニング処理(ビン分割)を行うにはcut関数、またはqcut関数を使用。
それぞれ、
cut関数は、最小値と最大値から、等間隔に切ってビン分割するのに対して、 qcut関数は、ビンの中の値の数を揃えてビン分割するという違いがある。
cut関数
第一引数xに元データとなる一次元配列、第二引数binsにビンの数を指定する。
(例)pd.cut(df.petal_length, 4)
第二引数binsにリストを指定すると、リストの要素を境界値として分割される。
(例)pd.cut(df.petal_length, [0, 1.0, 5.0, 10.0]))
labels=Falseとすると整数値のインデックス(0始まりの連番)をつけられる。このインデックスを基に集計して、各セグメント毎の挙動の違いをよく確認する。
(例)pd.cut(df.petal_length, 4 ,labels = False)
qcut関数
各ビンに含まれる個数(要素数)が等しくなるようにビニング処理(ビン分割)する関数。
q =2にすると中央値が得られ、4にすると四分点が得られる。
(例)pd.qcut(df.petal_length, 2)
cut関数と同様にlabels=Falseとすると整数値のインデックス(0始まりの連番)をつけられる。
(例)pd.qcut(df.petal_length, 2,labels = False)