【发布时间】:2021-12-02 13:02:21
【问题描述】:
我何时应用 PCA,是在对整个数据集进行预处理(即删除空值、编码等)之后还是之前?在我完全预处理我的数据集后,
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
x_train[:,0:14] = sc.fit_transform(x_train[:,0:14])
x_test[:,0:14] = sc.transform(x_test[:,0:14])
我只剩下形状,113126x91
【问题讨论】:
-
您是要删除分析应该找到的特征,还是应该忽略的特征?
-
PCA 用于查找描述数据方差的最相关特征。例如:假设你有 100 个属性。但其中一些已经相互依赖,使用 30 个属性足以解释 %95 的数据实际含义(方差)。根据这些信息,在缩放后实施 PCA 会更好。因此,PCA 不会因为属性尺度不同而产生偏差。请查收:scikit-learn.org/stable/auto_examples/preprocessing/…
-
对不起,如果我的 q 没有任何意义,但我想知道我们是否需要在预处理之后或在预处理数据之前执行它。
-
我投票结束这个问题,因为它与 help center 中定义的编程无关,而是关于 ML 理论和/或方法 - 请参阅
machine-learning@ 中的介绍和注意事项987654323@.
标签: python machine-learning scikit-learn pca