在尝试将xlsx中的数据转换为fpgrowth的正确格式时,我在运行时会遇到以下错误消息 model = fpGrowth.fit(pivotDF)
: IllegalArgumentException: requirement failed: The input column must be array, but got bigint.
我从xlsx文件中取出数据,读入pandasDataframe,然后将其转换为sparkDataframe,进行一些清理和旋转以获得所需的表。 pivotDF.printSchema()
显示如下:
|-- SalesTransactionID: long (nullable = true)
|-- 0: long (nullable = true)
|-- 1: long (nullable = true)
|-- 2: long (nullable = true)
|-- 3: long (nullable = true)
|-- 4: long (nullable = true)
|-- 5: long (nullable = true)
|-- 6: long (nullable = true)
....
我的数据(pivotdf)如下所示:
+------------------+---+---+---+---+---+---+---+---+---+---+
|SalesTransactionID| 0| 1| 2| 3| 4| 5| 6| 7| 8| 9|
+------------------+---+---+---+---+---+---+---+---+---+---+
| 0| 0| 0| 0| 0| 0| 0| 0| 6| 6| 0|
| 1| 0| 0| 0| 0| 0| 0| 0| 0| 3| 0|
| 2| 0| 0| 0| 0| 0| 0| 2| 0| 0| 0|
| 3| 0| 0| 0| 0| 0| 0| 0| 0| 0| 0|
| 4| 0| 0| 0| 0| 0| 0| 0| 0| 0| 0|
+------------------+---+---+---+---+---+---+---+---+---+---+
是否有任何方法将其转换/强制转换为所需的数组类型列?
非常感谢
编辑:我的目标是这样的:
([(0, [7, 8]),
(1, [8]),
(2, [6])],
["id", "items"])
暂无答案!
目前还没有任何答案,快来回答吧!