2024年1月26日金曜日

糖尿病:Diabetes Health Indicators Dataset : 02 主成分分析からクラスタリングまで

 糖尿病:Diabetes Health Indicators Dataset : 基本分析01の続きを行なっていきます。今回は主成分分析と主成分分析の結果を用いたクラスタリングです。

1. 主成分分析の実施

まず主成分分析を行なっていきますが、今回のように要素が多い場合、主成分分析で次元削減を行い、新たな軸で分析することは有効です。今回は累積寄与率80%で分析を行います。主成分分析を行い、各主成分の項目ごとのウエイトをデータフレームにして算出します。今回は目的変数に相当する「Diabetes_binary」は除いた21項目で実施しました。80%の累積寄与率でやると14主成分となっています。

これだとはっきりしないので、ヒートマップで色分けしてみます。
演習:このヒートマップをみて、各主成分(PC0 ~ PC4)に名前をつけましょう。
  • PC0: この主成分は「GenHlth」(一般的な健康状態)や「PhysHlth」(身体的健康)などの特徴量に高い負荷量を持っています。したがって、この主成分は「全体的健康状態」を反映していると考えることができます。
  • PC1: 「Age」(年齢)に高い負荷量を持っており、「Education」(教育)や「Income」(収入)にも影響を与えています。この主成分は「年齢と社会経済的地位」を反映していると言えるでしょう。
  • PC2: 「Fruits」(果物の摂取)や「Veggies」(野菜の摂取)に高い負荷量を持っています。この主成分は「食生活の健康性」を表している可能性があります。
  • PC3: この主成分は「BMI」(体格指数)に高い負荷量を持っており、「CholCheck」(コレステロール検査)や「GenHlth」(一般的な健康状態)にも影響を与えています。この主成分は「身体的健康とライフスタイル」を反映していると考えられます。
  • PC4: 「Smoker」(喫煙)に高い負荷量を持っていることが見られます。また、他の健康関連の特徴量にも影響を与えています。この主成分は「喫煙と関連する健康リスク」を表している可能性があります。
累積寄与率のグラフを書いてみます。
次に主成分0と1を使って、biplotで表示します。まずは「Diabetes_binary」が1のときです。
次に「Diabetes_binary」が0のときです。
PC2も加えて3次元で表示してみます。

演習:biplotの結果からどのようなことが言えるでしょうか?

2. 主成分分析の結果からクラスタリング実施
次にクラスタリングを実施してみます。元データからではなく、主成分分析で求まる射影行列を使ってのクラスタリングを行います。今回はK-means法で5個のクラスタに分類してみます。
この結果をヒートマップで表示してみやすくしてみます。値を整えてから出力します。
演習:それぞれのクラスタの特徴を書き出してみましょう。
  • クラスタ0 (「低リスク・健康志向」): このクラスタは全体的に低い糖尿病率と低い健康リスク指標(BMI、高血圧など)を示しており、身体活動が高いことが特徴です。

  • クラスタ1 (「中高年・リスクあり」): 高い年齢層に属し、高血圧や高コレステロールの割合が高い。中程度の糖尿病率を持つ。

  • クラスタ2 (「高リスク・健康課題」): 最も高い糖尿病率を持ち、BMIや心臓病のリスクも高い。身体活動が低く、健康上の課題が多い。

  • クラスタ3 (「アクセス限定・中リスク」): 一般的な健康状態は中程度で、医療へのアクセスが限られている(NoDocbcCostが高い)ことが特徴。中程度の糖尿病率。

  • クラスタ4 (「若年・喫煙者」): 比較的若い年齢層で喫煙率が高い。糖尿病の割合は比較的低いが、長期的な健康リスクを持つ可能性がある。


このような方法で、基本的な分析からクラスタリングをすることで、データの内容がわかりやすくなったと思います。

0 件のコメント:

コメントを投稿