跳到主要內容
Lab Grimoire
TW EN
請喝咖啡
統計分析

PCA 主成分分析

免費線上 PCA 主成分分析工具。Score Plot、Scree Plot、Loadings 矩陣,適合多變量數據降維。

把多個變數濃縮成主成分

資料

範例:R datasets::USArrests(美國各州,1973 年)

貼上資料表
矩陣檢查
  • 各列欄位數一致
  • 樣本標籤數與列數一致
  • 特徵名稱數與欄位數一致
  • 數值皆可解析
  • 矩陣未超過列數上限

選項

結果

輸入至少兩個樣本與兩項特徵,即可在 webR 執行 PCA。

R 引擎會在你開始輸入時載入(只下載一次)

使用說明與常見問題

什麼是主成分分析?

主成分分析(Principal Component Analysis, PCA)是一種降維技術,用於將高維度的數據投影到較低維度的空間中,同時盡可能保留原始數據的變異資訊。

想像你有一份包含 20 個生化指標的血液檢測數據。這 20 個變數之間可能存在大量的冗餘(例如多種發炎指標之間高度相關)。PCA 會找出數據中變異量最大的方向——這些方向就是「主成分(Principal Components)」。

數學上,PCA 對數據的共變異數矩陣進行特徵值分解(eigendecomposition)。每個特徵值代表該主成分所解釋的變異量,對應的特徵向量則定義了主成分的方向(也就是原始變數的線性組合權重)。

如何解讀 Scree Plot

Scree Plot 是一張將各主成分的特徵值(或解釋變異百分比)按大小排列的圖表。它是決定「保留幾個主成分」的關鍵工具。

  • 手肘法則(Elbow Rule):找到曲線從陡峭變為平坦的「手肘」位置。手肘之前的主成分包含有意義的資訊,之後的主成分主要是噪音。
  • Kaiser 準則:保留特徵值大於 1 的主成分(僅適用於標準化後的數據)。邏輯是:一個主成分解釋的變異如果還不如單一原始變數,就不值得保留。
  • 累積解釋變異量:通常目標是保留到累積解釋 70-90% 的總變異量。在探索性分析中 70% 可能就足夠;在嚴謹的研究中可能需要 85% 以上。

Loadings 的解讀

Loadings 矩陣顯示每個原始變數對各主成分的貢獻權重。絕對值越大,代表該變數對該主成分的影響越大。

  • 如果 PC1 的 loadings 中,BMI、腰圍、三酸甘油酯的權重都很高,你可以將 PC1 解讀為「代謝症候群因子」。
  • 如果某個變數在所有主成分上的 loadings 都很低,它可能對你的分析沒有太大貢獻。

PCA 的應用場景

PCA 在生醫研究中有幾個核心應用:

  • 處理多重共線性:當你的自變數之間高度相關時,直接丟進迴歸模型會導致估計不穩定。先用 PCA 提取獨立的主成分,再以主成分作為迴歸的預測變數,可以有效解決這個問題。
  • 數據探索與視覺化:將高維數據投影到前兩個主成分(Score Plot),可以直觀地觀察樣本之間的分群趨勢、離群值,以及不同實驗條件之間的差異。
  • 機器學習前處理:在訓練分類或預測模型之前,用 PCA 降維可以減少過度擬合(overfitting)的風險,同時加速運算。
  • 基因表現分析:在基因組學和轉錄組學中,PCA 常用於檢測批次效應(batch effect)、辨識樣本異常,以及初步探索基因表現的整體模式。

建立直覺:互動投影探索

執行分析後,本工具會提供一個用你自己資料驅動的互動投影探索器。任選兩個特徵,拖曳直線旋轉投影方向,投影後的變異數會即時更新;按下 OPTIMIZE,直線會以動畫滑向使投影最分散的方向,也就是這兩個特徵的第一主成分(PC1)。在閱讀下方正式的 score plot 與 scree plot 之前,這是親手體會「最大化變異」意義的方式。請注意:兩個特徵的 PC1 與使用全部變數計算的整體 PC1 並不相同。

使用 PCA 前的注意事項

  • 標準化:如果你的變數有不同的量綱(例如體重用公斤、血壓用 mmHg),必須先標準化(z-score),否則量綱較大的變數會主導主成分。
  • 樣本量:經驗法則是觀測數至少要是變數數的 5-10 倍。樣本太少時,PCA 的結果不穩定。
  • 線性假設:PCA 只捕捉線性關係。如果你的數據中存在重要的非線性結構,考慮使用 t-SNE 或 UMAP 進行非線性降維。
  • 可解釋性:主成分是原始變數的線性組合,有時不容易給出直觀的命名。如果可解釋性很重要,可以考慮因子分析(Factor Analysis)搭配旋轉(Varimax rotation)。

版本紀錄

所有工具的版本紀錄集中列於編年史。

查看工具更新