除以下使用Scala的示例外,我没有找到任何将矩阵转换为Spark数据框的pyspark代码。有人知道如何使用python吗?
答案 0 :(得分:2)
我们可以使用toArray()
方法将DenseMatrix转换为numpy ndarray,并使用tolist()
从数组转换为列表。
>>> m = DenseMatrix(2, 2, range(4))
>>> m
DenseMatrix(2, 2, [0.0, 1.0, 2.0, 3.0], False)
>>> rows = m.toArray().tolist()
>>> rows
[[0.0, 2.0], [1.0, 3.0]]
>>> df = spark.createDataFrame(rows,['col1','col2'])
>>> df.show()
+----+----+
|col1|col2|
+----+----+
| 0.0| 2.0|
| 1.0| 3.0|
+----+----+