2017-02-14 7 views
5

Python 3.5 Jupyter 환경에서 다음을 실행할 때 아래 오류가 발생합니다. 무슨 일이 일어나고 있는지에 대한 아이디어가 있습니까?findspark.init() IndexError : 목록 색인 범위 외 오류

import findspark 
findspark.init() 

오류 :이 때문에 SPARK_HOME 환경 변수에 가능성이 높습니다

IndexError        Traceback (most recent call 
last) <ipython-input-20-2ad2c7679ebc> in <module>() 
     1 import findspark 
----> 2 findspark.init() 
     3 
     4 import pyspark 

/.../anaconda/envs/pyspark/lib/python3.5/site-packages/findspark.py in init(spark_home, python_path, edit_rc, edit_profile) 
    132  # add pyspark to sys.path 
    133  spark_python = os.path.join(spark_home, 'python') 
--> 134  py4j = glob(os.path.join(spark_python, 'lib', 'py4j-*.zip'))[0] 
    135  sys.path[:0] = [spark_python, py4j] 
    136 

IndexError: list index out of range 

답변

2

시스템에 올바르게 설정되지 않습니다. 당신이 findspark을 초기화하는 때 양자 택일로, 당신은 너무 좋아, 그것을 지정할 수 있습니다 : 그 후

import findspark 
findspark.init('/path/to/spark/home') 

을, 모든 일을해야한다!

2

저도 같은 오류가 발생하고 정확한 설치 디렉토리를 입력하여 작동하게 할 수 있었다되었다

import findspark 
# Use this 
findspark.init("C:\Users\PolestarEmployee\spark-1.6.3-bin-hadoop2.6") 
# Test 
from pyspark import SparkContext, SparkConf 

Basically, it is the directory where spark was extracted. In future where ever you see spark_home enter the same installation directory. I also tried using toree to create a kernal instead, but it is failing somehow. A kernal would be a cleaner solution.

0

당신은 bash_profile 안에 SPARK_HOME 변수를 업데이트해야합니다. 나를 위해 다음 명령은 (터미널에서) 일 :

export SPARK_HOME="/usr/local/Cellar/apache-spark/2.2.0/libexec/"

을이 후에는이 명령에 따라 사용할 수 있습니다

import findspark 
findspark.init('/usr/local/Cellar/apache-spark/2.2.0/libexec')