def doPCA(data, dimensions=2):
from sklearn.decomposition import PCA
model = PCA(n_components=dimensions, svd_solver='randomized', random_state=7)
model.fit(data)
return model
文件" /home/dogus/Downloads/DAT210x-master/Module5/assignment4.py", 第221行 display_pca = doPCA(T)
文件" /home/dogus/Downloads/DAT210x-master/Module5/assignment4.py", 第56行,在doPCA中 model = PCA(n_components = dimensions,svd_solver =' randomized',random_state = None)
TypeError: init ()得到了一个意外的关键字参数 ' random_state'
编辑:
Spyder造成的问题?我该如何解决?
答案 0 :(得分:2)
您可能正在使用旧版sklearn。 docs表示在版本0.18.0中添加了random_state变量。尝试更新sklearn。
为了进行更新,请查看这些问题
根据您的评论,只是为了确保问题不是scikit-learn版本,请尝试以下
def doPCA(data, dimensions=2):
from sklearn.decomposition import PCA
import sklearn
print sklearn.__version__
model = PCA(n_components=dimensions, svd_solver='randomized', random_state=7)
model.fit(data)
return model
这将仅打印正在使用的sklearn版本。正如你所说,你也用pip安装了sklearn,你可能会有相互矛盾的版本。