【发布时间】:2017-05-26 03:51:42
【问题描述】:
我有一个包含一些分类特征的数据集。我正在尝试对 Spark 框架中的所有这些分类功能应用完全相同的功能。我的第一个假设是我可以将每个功能的操作与其他功能的操作并行化。但是我不知道这是否可能(阅读this,this 后感到困惑)。
例如,假设我的数据集如下:
feature1, feature2, feature3
blue,apple,snake
orange,orange,monkey
blue,orange,horse
我想分别计算每个特征的每个类别的出现次数。例如对于 feature1 (blue=2, orange=1)
【问题讨论】:
-
您展示了输入数据集。输出数据集呢?输出会是什么样子?
-
我想在每个特征中找到每个类别的数量。例如:对于特征一,输出是一个像 2,1 这样的数组。但在这里为简单起见,我写了红色、蓝色等类别。但在我的问题中,我会将每个类别更改为位表示。例如:在第一个功能中,我有 2 个类别(蓝色和橙色)。我将使用 2 位来表示它。所以红色为 10,橙色为 01。然后我将按列求和,输出为 11,这意味着蓝色为 1,橙色为 1。因此,我不能使用像计数这样的普通聚合。我想使用UDF。你能帮我看看怎么写吗?
标签: apache-spark dataframe apache-spark-sql apache-spark-mllib