我有一个 csv 文件中的数据集,谁能告诉我如何使用 Apache Spark java 程序在特定列上旋转数据集。
示例数据:
id | name | city
1 john Newyork
2 smith LA
3 mike Boston
我正在尝试在城市列上进行旋转
结果应该是:
id | name | Newyork | LA | Boston
1 john 1 0 0
2 smith 0 1 0
3 mike 0 0 1
..提前致谢
最佳答案
您可以使用 mllib 稀疏 vector 和密集 vector : https://spark.apache.org/docs/latest/mllib-data-types.html
您可以使用 RDD.zipWithUniqueId 创建一个查找表,一个用于名称,另一个用于城市,这会将 Long 值转换为 double ,并使用 double 输入密集 vector 。 希望有帮助。
关于java - 尝试使用 Apache Spark Java API 透视表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31855884/