ロジスティック回帰の係数を探る
ロジスティック回帰の係数を確認して、解約(churn)を押し上げたり下げたりしている要因を理解しましょう。この演習では、学習済みモデルからロジスティック回帰の係数を取り出し、解釈しやすくするためにその指数を計算します。
学習済みのロジスティック回帰インスタンスは logreg、スケーリング済みの特徴量は train_X という pandas のDataFrameとして読み込まれています。numpy と pandas はそれぞれ np と pd としてインポート済みです。
この演習はコースの一部です
Pythonで学ぶマーケティングのための機械学習
演習の手順
- 特徴量名と係数を結合して、
pandasのDataFrameにまとめてください。 - ロジスティック回帰の係数の指数を計算してください。
- 係数が0のものを取り除き、指数係数で並べ替えて表示してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Combine feature names and coefficients into pandas DataFrame
feature_names = pd.DataFrame(___.columns, columns = ['Feature'])
log_coef = pd.DataFrame(np.transpose(logreg.coef_), columns = ['Coefficient'])
coefficients = pd.concat([feature_names, ___], axis = 1)
# Calculate exponent of the logistic regression coefficients
coefficients['Exp_Coefficient'] = np.___(coefficients['Coefficient'])
# Remove coefficients that are equal to zero
coefficients = coefficients[coefficients['Coefficient']!=___]
# Print the values sorted by the exponent coefficient
print(coefficients.sort_values(by=['___']))