2017-04-05 145 views
-1

讓我前言本:降維聚類在R(PCA等方法)

我已經在這個問題上廣泛地看着,我已經發現了幾個有趣的可能性考慮(如thisthis)。我也研究過主成分分析,並且我看到一些消息來源聲稱這是一個不好的降維方法。但是,我覺得它可能是一個好方法,但我不確定如何實現它。我在這個問題上找到的所有資源都給出了一個很好的解釋,但是他們很少提供任何關於實際應用這些方法之一的建議(即如何在R中實際應用方法)。

所以,我的問題是:是否有一個明確的方法去關於降維R?我的數據集包含數值和分類變量(具有多個級別),並且相當大(〜40k個觀察值,18個變量(但是如果我將分類變量轉換爲虛擬變量,則爲37個變量))。

的幾點:

  • 如果我們要使用PCA,那麼我將不得不把分類變量以某種方式轉換成數字。簡單地使用虛擬變量的方法是否可行?

  • 對於任何類型的無監督學習降維,我該如何處理有序變量?序數變量的概念在無監督學習中甚至有意義嗎?

  • 我與PCA的真正問題是,當我執行它,並有我的主要組成部分..我不知道該怎麼做他們。據我所知,每個主要組成部分都是變量的組合 - 因此我不確定這是如何幫助我們挑選哪些變量是最好的變量。

+0

我不確定這是否屬於這裏。看起來這個問題更多的是關於如何做一個適當的降維分析,這實際上是一個應該繼續[stats.se]或[datascience.se]的統計問題。如果問題真的在R中編碼,那麼問題應該包括一個[可重現的例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)樣本輸入數據(它不應該是您的整個數據集)。嘗試分離與編程直接相關的部分和不相關的部分。 – MrFlick

回答

1

我不認爲這是一個R問題。這更像是一個統計問題。

  • PCA不適用於分類變量。 PCA依賴於分解協方差矩陣,這對於分類變量不起作用。
  • 有序變量在有監督和無監督學習中有很大的意義。你到底在找什麼?如果它們沒有傾斜,並且您有很多級別,則只應將序列變量應用於PCA。
  • PCA只給你一個主成分和它們的特徵值的新變換。它與降維無關。我再說一遍,它與降維無關。只有在選擇主要組件的子集時,才能減少數據集。 PCA是迴歸,數據可視化,探索性分析等有用
  • 一種常見的方法是應用最優尺度改變你的分類變量的PCA:

閱讀:

http://www.sicotests.com/psyarticle.asp?id=159

您可能還需要考慮對應分析爲分類變量和多因素分析適用於分類和連續。