Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pyspark PCA()得到了一个意外的关键字参数';k';_Pyspark_Pca_Apache Spark Ml - Fatal编程技术网

Pyspark PCA()得到了一个意外的关键字参数';k';

Pyspark PCA()得到了一个意外的关键字参数';k';,pyspark,pca,apache-spark-ml,Pyspark,Pca,Apache Spark Ml,我正在尝试在python脚本上使用pysparkapi从spark应用程序执行pca。我这样做: pca=pca(k=3,inputCol=“features”,outputCol=“pcaFeatures”) PCAmodel=pca.fit(数据) 当我在pyspark shell中运行这两个代码行时,它工作正常并返回良好的结果,但在应用程序脚本中,我得到了错误类型: PCA()获得意外的关键字参数“k” PS:在这两种情况下,我都使用Spark 2.2.0 问题在哪里?为什么它在PySp

我正在尝试在python脚本上使用pysparkapi从spark应用程序执行pca。我这样做:

pca=pca(k=3,inputCol=“features”,outputCol=“pcaFeatures”)
PCAmodel=pca.fit(数据)
当我在pyspark shell中运行这两个代码行时,它工作正常并返回良好的结果,但在应用程序脚本中,我得到了错误类型:

PCA()获得意外的关键字参数“k”

PS:在这两种情况下,我都使用Spark 2.2.0


问题在哪里?为什么它在PySpark shell中工作而不适用于应用程序?

在一种情况下,您可能是从
ml
导入的:

from pyspark.ml.feature import PCA
另一个中的
mllib

from pyspark.mllib.feature import PCA

在应用程序脚本中从PySpark导入PCA后,您确定还没有从scikit学习导入PCA吗

spark.version
#u'2.2.0'
从pyspark.ml.feature导入PCA
从sklearn.decomposition导入PCA
#PySpark语法与scikit学习PCA函数
pca=pca(k=3,inputCol=“features”,outputCol=“pcaFeatures”)
#错误:
TypeError:\uuuu init\uuuuuuuuuu()获得意外的关键字参数“k”

颠倒导入顺序不会产生错误(未显示)。

尝试重命名您的类:

from pyspark.ml.feature import PCA as PCAML
from sklearn.decomposition import PCA as PCASK

pca_ml = PCAML(k=3, inputCol="features", outputCol="pcaFeatures")

那么,你叫哪一个应该不会有任何混淆

不,这不是我的情况,对于这两种情况,我都使用pyspark.ml.feature import PCA中的
,我使用的是spark 2.2.0