我已经下载了Spark版本2.3.1,hadoop版本2.7和Java jdk 8。 对于简单的练习,一切正常,但是当我尝试创建数据框时。它开始虽然错误。 以下代码运行无误。
import numpy as np
TOTAL = 1000000
dots = sc.parallelize([2.0 * np.random.random(2) - 1.0 for i in range(TOTAL)]).cache()
print("Number of random points:", dots.count())
stats = dots.stats()
print('Mean:', stats.mean())
print('stdev:', stats.stdev())
但是当我尝试以下代码时,要求输入更改为数据框
df = sc.parallelize([Row(name='ab',age=20), Row(name='ab',age=20)]).toDF()
答案 0 :(得分:0)
您缺少Row的导入。
from pyspark.sql import Row
df = sc.parallelize([Row(name='ab',age=20), Row(name='ab',age=20)]).toDF()
df.show()
结果:
+---+----+
|age|name|
+---+----+
| 20| ab|
| 20| ab|
+---+----+