このアーカイブは、pandas を使った リッカート尺度の集計 から始めて、SD法(Semantic Differential法)の集計・可視化・因子分析・対象物の比較 までを段階的に学ぶためのサンプルコード集です。
前半は likert_*.py、後半は sd_*.py で構成されています。
sample_1.csv: リッカート尺度の練習用データsample_sd.csv: SD法の練習用データ
各スクリプトは、基本的に ../sample_data/ にある CSV を読み込む想定です。
*_g.py は、表の出力に加えてグラフ表示が追加されたコードです。
likert_1.py: CSVを読み込み、DataFrameの基本表示を確認します。likert_2.py: 1項目の回答度数を集計し、reindexで尺度順を整えます。likert_3.py: 複数項目をmeltで縦長に変換し、項目×評定値の集計表を作ります。
sd_1.py: SDデータを読み込み、件数と内容を確認します。sd_2.py: 形容詞対・対象物コード・回答者コードの一覧を確認します。sd_3.py: 1つの対象物について、形容詞対ごとの評定分布を集計します。sd_4.py: 全対象物について、形容詞対ごとの平均評定を計算します。sd_5.py: 形容詞対どうしの相関行列を求め、関係の強さを確認します。
sd_6.py: 因子分析を行い、因子負荷行列を表で確認します。sd_7.py: 因子のまとまりに合わせて形容詞対を並べ替え、必要に応じて尺度方向を反転して見やすく整理します。sd_8.py: 各回答の因子得点を求め、対象物ごとの平均因子得点を算出します。
sd_9.py: 対象物ごとの平均因子得点を標準化し、距離計算・階層的クラスタリング(Ward法)・silhouette によるクラスタ数比較まで行います。
sd_utils.py: CSVパス取得、日本語フォント設定などの共通処理をまとめた補助モジュールです。
- pandas
- matplotlib
- scikit-learn
- scipy