Cuando ejecuto lo siguiente en un entorno Python 3.5 Jupyter, aparece el siguiente error. ¿Alguna idea sobre lo que lo está causando?
import findspark findspark.init()Error:
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 rangeLo más probable es que esto se deba a que la variable de entorno SPARK_HOME no está configurada correctamente en su sistema. Alternativamente, puede especificarlo cuando esté inicializando findspark , así:
import findspark findspark.init('/path/to/spark/home')Después de eso, ¡todo debería funcionar!
Recibí el mismo error y pude hacerlo funcionar ingresando el directorio de instalación exacto:
import findspark # Use this findspark.init("C:\Users\PolestarEmployee\spark-1.6.3-bin-hadoop2.6") # Test from pyspark import SparkContext, SparkConfBásicamente, es el directorio donde se extrajo Spark. En el futuro, dondequiera que veas
spark_homeingresa al mismo directorio de instalación. También intenté usar toree para crear un kernel en su lugar, pero está fallando de alguna manera. Un kernel sería una solución más limpia.
Debe actualizar la variable SPARK_HOME dentro de bash_profile. Para mí, el siguiente comando funcionó (en la terminal):
export SPARK_HOME="/usr/local/Cellar/apache-spark/2.2.0/libexec/"
Después de esto, puede seguir estos comandos:
import findspark findspark.init('/usr/local/Cellar/apache-spark/2.2.0/libexec')