如何解决Orange3和scikit-learn中的PCA-有什么区别?
我有点困惑:我计算了同一数据集的PCA。这是工作流程:
- 橙色3.26:读取.csv,4台PC上的PCA(标准化变量),散点图
- scikit-learn:读取相同的.csv,标准化数值
(StandardScaler(with_mean=True,with_std=True)),PCA (copy=True,iterated_power='auto',n_components=4,random_state=None,svd_solver='auto',tol=0.0,whiten=False)
结果与单个PC的数值不同:
橙色3.26:
这是我的scikit-learn-fu代码:
我有一个pd.DataFrame,形状为(268,16)。第一步,我将数据帧分成两个daframe:
- A1:包含所有行和所有要素;形状(268,13)
- B1:包含目标和每一行的ID;形状(268,3)
下一步,我使用sklearn.preprocessing的StandardScaler标准化数据帧A1:
a1 = StandardScaler(with_mean=True,with_std=True).fit_transform(A1)
下一步是PCA:
pca1 = PCA(n_components=4)
principalComponents1 = pca1.fit_transform(a1)
输出是得分和负荷-没什么特别的。
也许初始数据集的归一化有所不同? 有什么建议吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。