目标:我想在我的pycharm IDE中对apache-spark pyspark进行适当的解释.
问题:我目前收到以下错误:
ImportError: cannot import name accumulators
Run Code Online (Sandbox Code Playgroud)
我正在关注以下博客来帮助我完成整个过程.http://renien.github.io/blog/accessing-pyspark-pycharm/
由于我的代码采用了except路径,我亲自摆脱了尝试:除了:只是为了看看确切的错误是什么.
在此之前,我收到以下错误:
ImportError: No module named py4j.java_gateway
Run Code Online (Sandbox Code Playgroud)
只需在bash中输入'$ sudo pip install py4j'即可修复此问题.
我的代码目前看起来像下面的块:
import os
import sys
# Path for spark source folder
os.environ['SPARK_HOME']="[MY_HOME_DIR]/spark-1.2.0"
# Append pyspark to Python Path
sys.path.append("[MY_HOME_DIR]/spark-1.2.0/python/")
try:
from pyspark import SparkContext
print ("Successfully imported Spark Modules")
except ImportError as e:
print ("Can not import Spark Modules", e)
sys.exit(1)
Run Code Online (Sandbox Code Playgroud)
我的问题:
1.这个错误的来源是什么?原因是什么?2.如何解决问题,以便在pycharm编辑器中运行pyspark.
注意:我在pycharm中使用的当前解释器是Python 2.7.8(〜/ anaconda/bin/python)
提前谢谢!
唐
问题:我正在尝试从本地计算机向计算机集群运行火花提交脚本。集群完成的工作使用numpy。我目前收到以下错误:
ImportError:
Importing the multiarray numpy extension module failed. Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control). Otherwise reinstall numpy.
Original error was: cannot import name multiarray
Run Code Online (Sandbox Code Playgroud)
详细信息:在我的本地环境中,我设置了一个virtualenv,其中包括numpy以及我在项目和其他各种库中使用的私有存储库。我从venv / lib / site-packages的site-packages目录创建了一个zip文件(lib / libs.zip),其中“ venv”是我的虚拟环境。我将此zip邮寄到远程节点。我用于执行spark-submit的shell脚本如下所示:
$SPARK_HOME/bin/spark-submit \
--deploy-mode cluster \
--master yarn \
--conf spark.pyspark.virtualenv.enabled=true \
--conf spark.pyspark.virtualenv.type=native \
--conf spark.pyspark.virtualenv.requirements=${parent}/requirements.txt \
--conf spark.pyspark.virtualenv.bin.path=${parent}/venv \
--py-files "${parent}/lib/libs.zip" …Run Code Online (Sandbox Code Playgroud) 我正在使用Flask-WTF表单,我有以下代码:
在forms.py中
class DealForm( Form ):
country = SelectField( 'Country' )
Run Code Online (Sandbox Code Playgroud)
在main.py中
if not form.validate_on_submit():
form = DealForm()
form.country.choices = [('us','USA'),('gb','Great Britain'),('ru','Russia')]
return render_template( 'index.html', user = current_user, form = form )
else:
return render_template( 'index.html', form = form )
Run Code Online (Sandbox Code Playgroud)
我从POST返回时出错,因为country.choices是None我做错了什么?