我正在根据字符串列表创建一个新的pyspark数据框。我的代码应如何显示?
这是我的列表:['there','is','one','that','commands],这是我理想中想要的:
第1行:[“那里”,“是”,“一个”,“那个”,“命令”] 第2行:['test','try'
我已经尝试了以下代码,但没有一个能完全满足我的需求。
test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)
schema = StructType([StructField("name", StringType(), True)])
df3 = sqlContext.createDataFrame(test_list, schema)
AND
test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)
df3 = sqlContext.createDataFrame(row(test_list), schema)
我无法使用df.show()显示数据框。
答案 0 :(得分:-1)
您只需要导入Row对象,其他都很好。
from pyspark.sql.types import Row, StructType, StructField, StringType
test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)
rdd= test_list.map(lambda t: Row(name=t))
schema = StructType([StructField("name", StringType(), True)])
df = sqlContext.createDataFrame(rdd, schema)
df.show()
+------+
| name|
+------+
| hi|
| bye|
|thanks|
+------+