嗨,我尝试实现PCA(),但出现错误,
TypeError:PCA()获得了意外的关键字参数'n_components'。
from sklearn.decomposition import PCA
#Principal component analysis
def PCA(X,Y):
pca = PCA(n_components=2)
X = pca.fit_transform(X)
plot_2d_space(X, Y, 'Imbalanced dataset (2 PCA components)')
有人可以告诉我一个可能的原因吗
最佳答案
首先,您要导入from sklearn.decomposition import PCA
然后您对函数def PCA
使用相同的名称
因此,下次调用该函数时,它将不会从scikit-learn
函数调用该函数。
因此,基本上pca = PCA(n_components=2)
期望在传递n_components
的位置输入参数X和Y。
解:
更改函数的名称,它应该可以工作:
def PCA_2(X,Y):
pca = PCA(n_components=2)
X = pca.fit_transform(X)
plot_2d_space(X, Y, 'Imbalanced dataset (2 PCA components)')