使用MLlib时出现NumPy异常,即使安装了NumPy

2024-09-29 19:33:35 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是我要执行的代码:

from pyspark.mllib.recommendation import ALS
iterations=5
lambdaALS=0.1
seed=5L
rank=8
model=ALS.train(trainingRDD,rank,iterations, lambda_=lambdaALS, seed=seed)

当我运行依赖于numpy的model=ALS.train(trainingRDD,rank,iterations, lambda_=lambdaALS, seed=seed)命令时,Spark使用的Py4Java库抛出以下消息:

^{pr2}$

NumPy 1.10安装在错误消息中所述的计算机上。 此外,当我直接在Jupyter笔记本中执行以下命令时,我得到了1.9.2版本: import numpynumpy.version.version

我显然在运行一个版本超过1.4的NumPy,但我不知道在哪里。我如何判断需要在哪台机器上更新我的NumPy版本?在


Tags: lambdaimport命令版本numpy消息modeltrain
2条回答

看起来你已经安装了两个版本的numpy,而pyspark正在导入旧版本。要确认这一点,可以执行以下操作:

import numpy
print numpy.__version__
print numpy.__path__

这可能会给你1.9.2和它的路径。现在这样做:

^{pr2}$

是不是从另一条路径加载了一个不同的numpy?如果是的话,删除它很可能会解决问题。在

这是Mllib init代码中的一个错误

import numpy
if numpy.version.version < '1.4':
    raise Exception("MLlib requires NumPy 1.4+")

“1.10”来自“1.4” 您可以使用NumPy 1.9.2。在

如果你必须使用Numpy1.10并且不想升级到spark 1.5.1。 对代码进行手动更新。 https://github.com/apache/spark/blob/master/python/pyspark/mllib/init.py

相关问题 更多 >

    热门问题