Scala 从Spark Dataframe创建集合的有效方法

Scala 从Spark Dataframe创建集合的有效方法,scala,apache-spark,spark-dataframe,Scala,Apache Spark,Spark Dataframe,我有一个spark数据框,看起来像: ItemId date sale-amount 111 01-01 45 111 01-02 33 111 01-03 55 222 01-01 20 222 01-02 33 333 01-01 21 333 01-02 33 333 01-03 9 我想创建3个单独的数据框来包含带有数据和销售金额的单个项目,就像项目111一样: Df_111: ItemId date sal

我有一个spark数据框,看起来像:

ItemId  date   sale-amount
111    01-01  45
111    01-02  33
111    01-03  55
222    01-01  20
222    01-02  33
333    01-01  21
333    01-02  33
333    01-03   9
我想创建3个单独的数据框来包含带有数据和销售金额的单个项目,就像项目111一样:

Df_111:

ItemId  date   sale-amount
    111    01-01  45
    111    01-02  33
    111    01-03  55

我知道,我可以通过在原始数据帧上逐个筛选所有项目id来实现这一点,但是有没有更有效的方法?

为什么需要单独的数据帧?如果您想分离数据集,最简单(也是最有效)的解决方案是写入支持分区修剪的分区源。就像按函数分组一样。你能提供一个例子吗?用
partitionBy(…)
编写类似拼花地板和你需要的部件的格式。