DATUM STUDIOブログ
「楽屋」

【R】主成分分析と探索的因子分析で顧客満足度を分析する

初めまして、Datum StudioのLeon(リオン)と申します。

本記事では模擬案件を通じて、分析手法の説明を行います。

依頼内容は、3つの航空会社にがランダムで1000名顧客を対象にアンケート調査したデータを利用して、自社のどこが他の2社より優れているのか、もしくは劣っているのか?また、顧客の体験も一緒に知りたいとのです。

今回使用する手法は主成分分析(PCA)探索的因子分析(EFA)です。

(具体的な紹介はWikipediaのページをご覧ください:主成分分析探索的因子分析(英語)

早速ですが、始めましょう。

 

0. 模擬案件の背景

今回の顧客はA航空会社です。彼達がランダムで1000人利用者に3つ航空会社に対する満足度のアンケートを取りました。

※ 生データはここでダウンロードできます。(Data download

 

データ中の変数(値の範囲は 1 ~ 9で、1 は最低値、9 は最高値):

 

1. パッケージの読込

 

2. データインプット

データを一回確認します。

変数間の相関度を確認します。

 

※ ブルーになるほど相関度が「1」に近い、レッドになるほど相関度が「0」に近いです。

上記の図から、変数間の相関度が「1に近い」か、「ほぼ0」か、「-1に近い」かがわかります。

 

3. 主成分分析

各航空会社の平均点を取ります。

結果

図を描くため、行の名前を「1、2、3」から「AirlineCo.1、AirlineCo.2、AirlineCo.3」に変更します。

ヒートマップを描きます。

※ 色が濃いほど点数が高い。

この図から、AirlineCo.3(航空会社3)が2/3以上の項目が他の2社より優れていることがわかります。また、AirlineCo.2(航空会社2)が点数が一番低い項目が3社の中で最も多いことがわかります。

 

4. 探索的因子分析(EFA)

各因子の重要度を算出します。

結果:

上記の結果からもうすでに15個変数を影響している潜在変数の意味をほぼ推定できます。

各航空会社の因子の平均点を算出します。

図を描くため、行の名前を「1、2、3」から「AirlineCo.1、AirlineCo.2、AirlineCo.3」に変更します。

ヒートマップで因子を図表化します。

 

 ※ 色が濃いほど点数が高い。

上記の図の解釈の例:AirlineCo.1(航空会社1)は「Factor 3 : チケット購入体験」では他社より優れていますが、「Factor 2 : 機内サービス体験」ではもっと工夫する必要があります。

 

5. まとめ

今回はデータの前処理が要らず、単純に分析するだけの仕事で、結構時間の節約ができました。通常の生データ前処理は総案件の半分以上、偶に70%以上の時間をかかるケースもあります。

PCAとEFAの使い方は少しでもお役に立ちましたでしょうか?今後面白そうな模擬案件がありましたら、また紹介いたします。

Bye~