我正在尝试使用sklearn PCA在二维空间中绘制数据。我想再次使用相同的PCA表示形式来绘制多个数据,但让我们首先关注一组。
当我对数据运行sklearn.fit_transform
时,会得到以下结果:
sklearn_pca = sklearnPCA(n_components = 2, random_state = 55)
X_train_proj = sklearn_pca.fit_transform(X_train)
plt.scatter(X_train_proj[:, 0],
X_train_proj[:, 1],
c = dic[y_train.astype(int)],
s = y_train * 10 + 1)
输出1:https://i.ibb.co/B4FcV08/capture-1.png
当我在同一数据上运行sklearn.transform
时,使用之前由于fit_transform而创建的PCA对象,这是我得到的:
X_train_proj_2 = sklearn_pca.transform(X_train)
plt.scatter(X_train_proj_2[:, 0],
X_train_proj_2[:, 1],
c = dic[y_train.astype(int)],
s = y_train * 10 + 1)
输出2:https://i.ibb.co/0MS3Jhy/capture-2.png
我的数据绝对不包含NA,并且已经缩放。但是,大小很大,因为我有〜11,000行和〜20列。 我还通过计算相关矩阵快速检查了我的栏是否不相关。