矢量化以长格式来源的高维数据

zazmityj  于 2021-05-18  发布在  Spark
关注(0)|答案(0)|浏览(302)

我有一个非常大的长格式Dataframe(几十亿行),我想透视和矢量化(使用vectorassembler),目的是使用类似于tf idf的东西来降低维数。Dataframe一旦旋转,将有约1.3亿列。
源长格式架构如下所示:

root
 |-- entity_id: long (nullable = false)
 |-- attribute_id: long (nullable = false)
 |-- event_count: integer (nullable = true)

按以下方式旋转失败,耗尽执行器和驱动程序内存。我可以增加这两个,但我的感觉是,旋转然后使用矢量汇编不是解决这个问题的正确方法。

wide_frame = (
    long_frame.groupBy("entity_id")
    .pivot("attribute_id")
    .agg(F.first("event_count"))
)

为了实现每个实体的属性向量的最终目标,我应该尝试其他的Spark模式吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题