分散の小さい特徴量
前の演習で、正規化後の head_df に対して分散の小さい特徴量を除外するしきい値として 0.001 が適切だと分かりました。今回は VarianceThreshold の特徴選択器を使って、これらの特徴量を削除しましょう。
この演習はコースの一部です
Pythonで学ぶ次元削減
演習の手順
- しきい値 0.001 で分散しきい値セレクターを作成します。
head_dfを各列の平均で割って正規化し、セレクターに対して fit します。.get_support()を使ってセレクターからブールマスクを作成します。.loc[]メソッドにそのマスクを渡して、次元削減した DataFrame を作成します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
from sklearn.feature_selection import VarianceThreshold
# Create a VarianceThreshold feature selector
sel = ____(threshold=____)
# Fit the selector to normalized head_df
sel.fit(____ / ____)
# Create a boolean mask
mask = sel.____
# Apply the mask to create a reduced DataFrame
reduced_df = head_df.loc[____, ____]
print(f"Dimensionality reduced from {head_df.shape[1]} to {reduced_df.shape[1]}.")