问题描述
rdd = spark.sparkContext.parallelize(['a1','a2','a3','a4','a5',])
# convert to as follows
...,...
...,...
# show result
rdd.collect()
[Row(col='a1'),Row(col='a2'),Row(col='a3'),Row(col='a4'),Row(col='a5'),]
我知道在Java Spark
中我们可以使用Row
,但不能在PySpark
中实现。
那么,最合适的实现方式是什么?将其转换为dict
,然后将其转换为rdd
。
解决方法
然后导入Row
包。
rdd = spark.sparkContext.parallelize(['a1','a2','a3','a4','a5',])
from pyspark.sql import Row
rdd.map(lambda x: Row(x)).collect()
[<Row('a1')>,<Row('a2')>,<Row('a3')>,<Row('a4')>,<Row('a5')>]