从嵌套列表创建pyspark数据帧
我需要从嵌套列表创建一个数据帧 我尝试过不同的方法,但都不管用从嵌套列表创建pyspark数据帧,pyspark,Pyspark,我需要从嵌套列表创建一个数据帧 我尝试过不同的方法,但都不管用 R = Row("id","age","serial") List=[[1,2,3],[4,5,6],[7,8,9]] sp=spark.createDataFrame([R(i) for i in (List)]) 预期: 你必须用R*i代替Ri。这会将内部列表的各个元素传递给行对象 除此之外,必须在输入列表上应用zip以获得元组列表,如下所示 [(1, 4, 7), (2, 5, 8), (3, 6, 9)] 完整代码 R
R = Row("id","age","serial")
List=[[1,2,3],[4,5,6],[7,8,9]]
sp=spark.createDataFrame([R(i) for i in (List)])
预期:
你必须用R*i代替Ri。这会将内部列表的各个元素传递给行对象
除此之外,必须在输入列表上应用zip以获得元组列表,如下所示
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
完整代码
R = Row("id","age","serial")
L=[[1,2,3],[4,5,6],[7,8,9]]
sp=spark.createDataFrame([R(*i) for i in zip(*L)])
sp.show()
输出:
+---+---+------+
| id|age|serial|
+---+---+------+
| 1| 4| 7|
| 2| 5| 8|
| 3| 6| 9|
+---+---+------+
他只是要求把你的输出转换一下。我的错。一定是你忽略了。我已经更新了我的答案。谢谢