groupby 列上的 Spark scala 隔离森林

问题描述 投票:0回答:1

我有一个像这样的数据集:

enter image description here

我想按 Col1、Col2、Col3 对数据进行分组,并希望应用隔离林 按结果对该组进行排序。 如果 col3 值只是单个值,我可以应用隔离森林。 我想根据 groupBy 值将隔离森林应用于组。

你能帮我解决这个问题吗?

谢谢, PML

如果 col3 值只是单个值,我可以应用隔离森林。 我想根据 groupBy 值将隔离森林应用于组。

scala apache-spark isolation-forest
1个回答
0
投票

假设这里是 scala 并且这是一个 Spark 数据集,您只需 groupBy:

table.groupBy("COL1", "COL2", "COL3")

然后您需要进行聚合,这可能无法通过 SQL 操作完成。

一种可能的途径是从 RelationalGroupedDataset(从 groupBy 返回)转换为 KeyValueGroupedDataset

table.groupBy("COL1", "COL2", "COL3").as[(String, String, String), Double]

现在您可以使用 mapGroups 对每个

(String, String, String)
组的值组实施操作。

© www.soinside.com 2019 - 2024. All rights reserved.