私はPython 2.7の代わりにPython 3.5を使用してSparkで線形回帰を実行しようとしています。最初にPYSPARK_PHTHON = python3をエクスポートしました。 「numpyという名前のモジュールがありません」というエラーが表示されました。私は "pip install numpy"しようとしましたが、pipはPYSPARK_PYTHONの設定を認識しません。私はpipにnumpyを3.5にインストールするように頼んでいますか?ありがとうございます...SparkでPython 3.5のnumpyとpandasをインストールするにはどうすればいいですか?
$ export PYSPARK_PYTHON=python3
$ spark-submit linreg.py
....
Traceback (most recent call last):
File "/home/yoda/Code/idenlink-examples/test22-spark-linreg/linreg.py", line 115, in <module>
from pyspark.ml.linalg import Vectors
File "/home/yoda/install/spark/python/lib/pyspark.zip/pyspark/ml/__init__.py", line 22, in <module>
File "/home/yoda/install/spark/python/lib/pyspark.zip/pyspark/ml/base.py", line 21, in <module>
File "/home/yoda/install/spark/python/lib/pyspark.zip/pyspark/ml/param/__init__.py", line 26, in <module>
ImportError: No module named 'numpy'
$ pip install numpy
Requirement already satisfied: numpy in /home/yoda/.local/lib/python2.7/site-packages
$ pyspark
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
17/02/09 20:29:20 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/02/09 20:29:20 WARN Utils: Your hostname, yoda-VirtualBox resolves to a loopback address: 127.0.1.1; using 10.0.2.15 instead (on interface enp0s3)
17/02/09 20:29:20 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
17/02/09 20:29:31 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
Welcome to
____ __
/__/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/__/.__/\_,_/_/ /_/\_\ version 2.1.0
/_/
Using Python version 3.5.2 (default, Nov 17 2016 17:05:23)
SparkSession available as 'spark'.
>>> import site; site.getsitepackages()
['/usr/local/lib/python3.5/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3.5/dist-packages']
>>>
ヒント:スパーク(通常は、コンピュータのクラスタ*での作業が可能です)。 –
使用するクラスタ内のすべてのコンピュータにnumpy libをインストールする必要があります。つまりローカルマシン上でのみ使用している場合は、libを適切にダウンロードして追加してください。 Sparkは、そのnumpyやその他のlibが既に適切にリンクされているかどうかは気にしないでください。 –
@JackManeyローカルモードのようです。 OPは間違ったpipを使用しています:) Joshua - virtualenv、Anaconda、または他のenv管理ツールを使用することは良い考えです。 – zero323