我有点担心使用rapidminer聚合两个示例集的简单任务,需要对进程和可能的运算符提出建议。
我有两个CSV,如:
key A B C D E
first 2 2 2 2 2
second 3 3 3 3 3
和
key D E F G H I J K
first 4 4 4 4 4 99 99 99
third 5 5 5 5 5 77 77 77
我想要的是一个聚合数据集,它基本上是这两者的联合,但我也希望在生成的数据集中将'key'属性设置为uniqie。由于'first'值出现在两个数据集中,我需要对相应的值求和,因此得到的数据集如下:
key A B C D E F G H I J K
first 2 2 2 6 6 4 4 4 99 99 99
second 3 3 3 3 3 ? ? ? ? ? ?
third ? ? ? 5 5 5 5 5 77 77 77
请注意,'First D'和'First E'单元格已变为6(2 + 4)。
问号是由Union运营商生成的缺失值,稍后将被替换。
提前致谢。
答案 0 :(得分:0)
从Union
运算符开始。
使用此输入
key B C
first 4 5
third 4 5
和这个
key A B
first 3 4
second 3 4
Union
会这样做。
key A B C
first 3 4 ?
second 3 4 ?
first ? 4 5
third ? 4 5
然后使用Aggregate
来获取此信息。
key sum(A) sum(B) sum(C)
first 3 8 5
second 3 4 0
third 0 4 5
此处所需的参数是use default aggregation
设置为true
,default aggregation function
设置为sum
,group by attributes
设置为key
。
最后一步是使用Rename by Replacing
更改属性名称以使用户更友好。所需参数为replace what
设置为sum\((.*)\)
,replace by
设置为$1
。