2017-04-05 79 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

您可能还需要考虑对应分析为分类变量和多因素分析适用于分类和连续。