0
Следующий код устанавливает данные в идеальном формате, но мне нужно, чтобы он также называл столбцы «правильно».Использование Spark Pivot для get_dummies Substitute
df = spark.createDataFrame([
(0, "X", "a"),
(1, "Z", "b"),
(2, "X", "b"),
(3, "X", "c"),
(4, "Y", "c"),
(5, "Y", "a")
], ["id","category", "other_thing"])
pivotDF = df.groupBy("id").pivot("category").count()
pivotDF.show()
+---+----+----+----+
| id| X| Y| Z|
+---+----+----+----+
| 0| 1|null|null|
| 5|null| 1|null|
| 1|null|null| 1|
| 3| 1|null|null|
| 2| 1|null|null|
| 4|null| 1|null|
+---+----+----+----+
я должен был бы это как выход:
+---+-------------+-------------+-------------+
| id| category_X| category_Y| category_Z|
+---+-------------+-------------+-------------+
| 0| 1 | null| null|
| 5|null | 1| null|
| 1|null | null| 1|
| 3| 1 | null| null|
| 2| 1 | null| null|
| 4|null | 1| null|
+---+-------------+-------------+-------------+
Как я могу добавить имена столбцов программно (т.е. не нужно вручную ввести в «категории» в данном случае
Thx @LostInOverflow Ваш код работает (хотя вам нужно добавить ")" в последней строке 0123.. Это сказало, что я собираюсь изменить свой вопрос, потому что мне нужно иметь возможность добавлять часть «категории» программно. –