在 Pyspark 数据框中转置
Posted
技术标签:
【中文标题】在 Pyspark 数据框中转置【英文标题】:Transpose in Pyspark Dataframe 【发布时间】:2017-10-18 08:42:39 【问题描述】:我是 PySpark Dataframe 的新手,我正在关注来自 this link 的一个示例。在此链接中,他们正在使用 pandas 数据框,而我想使用 Spark Dataframe 来实现相同的目的。我被困在我想转置表格的问题上,我找不到更好的方法来做到这一点。由于列太多,我发现很难实现和理解 Pivot。有没有更好的方法来做到这一点?我可以在 Pyspark 中使用带有集群环境的 pandas 吗?
【问题讨论】:
【参考方案1】:在 pyspark API 中 pyspark.mllib.linalg.distributed.BlockMatrix
具有转置功能。
如果你有一个 df 列 id, features
bm_transpose = IndexedRowMatrix(df.rdd.map(lambda x:(x[0],
Vectors.dense(x[1])))).toBlockMatrix(2,2).transpose()
【讨论】:
以上是关于在 Pyspark 数据框中转置的主要内容,如果未能解决你的问题,请参考以下文章