【发布时间】:2018-03-26 17:48:34
【问题描述】:
我正在使用 Python 3 中的 scikit learn 对形状为 300,1500 的数据集执行 PCA。 在 scikit 学习和普遍接受的方法中,我在 PCA 实施的背景下有以下问题。
1) 在进行 PCA 之前,我是否要删除高度相关的列?我有 67 列相关性 > 0.9。 PCA 是否会自动处理这种相关性,即忽略它们?
2) 在执行 PCA 之前是否需要去除异常值?
3)如果我必须删除异常值,如何最好地解决这个问题。当我尝试删除异常值(z-score >3)时,对每列使用 z-score,我只剩下 15 个观察值。这似乎是错误的方法。
4) 最后,我应该使用理想数量的累积解释方差来选择 P 分量。在这种情况下,大约 150 个组件给了我 90% 的解释方差
【问题讨论】:
-
可能更适合Data Science 或Cross-Validated
-
@srinivas-suresh 我可以将此问题转移到数据科学或交叉验证吗?
-
是的,标记问题并等待模组
标签: python scikit-learn statistics pca