apache-spark - pyspark : NameError: name 'spark' is not defined

标签 apache-spark machine-learning pyspark distributed-computing apache-spark-ml

我是从官方文档网站复制pyspark.ml示例: http://spark.apache.org/docs/latest/api/python/pyspark.ml.html#pyspark.ml.Transformer

data = [(Vectors.dense([0.0, 0.0]),), (Vectors.dense([1.0, 1.0]),),(Vectors.dense([9.0, 8.0]),), (Vectors.dense([8.0, 9.0]),)]
df = spark.createDataFrame(data, ["features"])
kmeans = KMeans(k=2, seed=1)
model = kmeans.fit(df)

但是,上面的示例无法运行并给出以下错误:

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-28-aaffcd1239c9> in <module>()
      1 from pyspark import *
      2 data = [(Vectors.dense([0.0, 0.0]),), (Vectors.dense([1.0, 1.0]),),(Vectors.dense([9.0, 8.0]),), (Vectors.dense([8.0, 9.0]),)]
----> 3 df = spark.createDataFrame(data, ["features"])
      4 kmeans = KMeans(k=2, seed=1)
      5 model = kmeans.fit(df)

NameError: name 'spark' is not defined

需要设置哪些附加配置/变量才能运行示例?

最佳答案

您可以添加

from pyspark.context import SparkContext
from pyspark.sql.session import SparkSession
sc = SparkContext('local')
spark = SparkSession(sc)

到代码的开头来定义 SparkSession,然后 spark.createDataFrame() 应该可以工作。

关于apache-spark - pyspark : NameError: name 'spark' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39541204/

相关文章:

apache-spark - Spark查询运行很慢

python - pyspark sql : Create a new column based on whether a value exists in a different DataFrame's column

python - 使用 pyspark 找出配置单元表的最后一个值

machine-learning - 如何使用木槌提取主题关键词

machine-learning - 使用 Caffe 没有提高 RMSprop、Adam、AdaDelta 测试精度

apache-spark - 写入文件时出现Databricks Checksum错误

python - pySpark 替换行子集上的空值

apache-spark - 使用 Amazon Glue 将一行转换为多行

hadoop - 在 RDD 方法中访问 HDFS 输入拆分路径

machine-learning - Scikits 学习 : feature weight in Linear kernel SVM