【发布时间】:2018-03-20 19:30:22
【问题描述】:
我在网上查看了许多不同的解决方案,但数数没有找到我想要解决的问题。 请帮我解决这个问题。
我正在使用带有 Scala 的 Apache Spark 2.1.0。以下是我的数据框:
+-----------+-------+
|COLUMN_NAME| VALUE |
+-----------+-------+
|col1 | val1 |
|col2 | val2 |
|col3 | val3 |
|col4 | val4 |
|col5 | val5 |
+-----------+-------+
我希望将其转置为,如下所示:
+-----+-------+-----+------+-----+
|col1 | col2 |col3 | col4 |col5 |
+-----+-------+-----+------+-----+
|val1 | val2 |val3 | val4 |val5 |
+-----+-------+-----+------+-----+
【问题讨论】:
-
如果两条记录具有相同的
COLUMN_NAME但不同的VALUE怎么办?那应该是什么价值呢?如果你知道没有这样的重复,你的数据框要么非常小(在这种情况下,你可以收集它并使用普通的 Scala 进行转换)或者结果会有太多的列。 -
两条记录永远不会有相同的列名。事实上,我在多行中获得了表插入/更新详细信息,一列带有 columnn-names,另一列带有值,我的计划是将它们转换为数据框并将它们直接更新到 Kudu 数据库中。第一列值作为模式出现,并发送作为值的列值。所以我需要用它来构建数据框。如果您有任何其他建议/想法,请告诉我。
标签: scala apache-spark dataframe transpose