如何在Spark中一起创建附近值组?

时间:2018-01-29 02:42:00

标签: scala apache-spark spark-dataframe grouping

所以我在Spark中有这个数据框:

DF:

index           value
1               2.0
3               2.5
4               2.3
6               2.4
7               2.6
15              2.1
16              2.4
17              2.3
18              2.6
20              2.9
...

我想将附近索引的记录组合在一起。像这样:

df_grouped:

index           value           group
1               2.0             1
3               2.5             1
4               2.3             1
6               2.4             1
7               2.6             1
15              2.1             2
16              2.4             2
17              2.3             2
18              2.6             2
20              2.9             2
...

并且可能将每个组分成不同的文件。

df_group_1

index           value
1               2.0
3               2.5
4               2.3
6               2.4
7               2.6

df_group_2

index           value
15              2.1
16              2.4
17              2.3
18              2.6
20              2.9

数据分为多个文件,每个文件88MB,文件超过700个,总大小约为68GB。打算成为一个组的行可能存在于多个文件中,即文件#1-10可能都有附近的索引,并且索引开始在文件#11中跳转以指示新组。

有没有办法在Spark with Scala中做到这一点?

我一直在研究K-means聚类方法,但是如果我没弄错的话,它需要从头开始指定聚类的数量。在这个数据框架中,我们不知道我们将拥有多少个集群。

我的Spark版本是2.1.0

0 个答案:

没有答案