ロード・オブ・ザ・ホワイトハッカー

ホワイトハッカーはじめました

アンケート分析(2):スケーリング

スケーリングの目的

アンケートデータの場合、5段階の回答を求める場合、質問によっては、1に偏ったりする場合がある。各設問でばらつきがでないように調整するため。

 

スケーリングには、2種類ある。

  • 正規化:「特徴量を0〜1に変換するスケーリング」
  • 標準化:「特徴量の平均を0、分散を1に変換するスケーリング」

数式に書くと。。。眠たくなるので、割愛。

アンケートデータのスケーリングでは、分散を等しくするために、標準化を使う。

pythonでの実装

pythonのscikit-learnのsklearnを使えば、2-3行のコードで実現できる。

  • MinMaxScaler:正規化
  • StandardScaler:標準化

以下が実際のコード

from sklearn import preprocessing
ss = preprocessing.StandardScaler()

#別のデータフレーム作成
questionnaire_s = pd.DataFrame(ss.fit_transform(questionnaire))

 

fit_transformでヘッダーの情報がなくなるので、コピーする。

#ヘッダー情報のコピー
questionnaire_s.columns = questionnaire.columns

 

一連を実行すると、以下の結果。

f:id:chikuwamaruX:20210814071836p:plain