这是我的数据集,
Name Group Age
A [123] 10
B. [123,456] 20
C. [456,789] 30
D. [900] 40
E. [800,900] 50
F. [1000] 60
现在我想合并 Group
这样,结果看起来
Name Group Age
A,B,C [123,456,789] 10,20,30
D,E [900,800] 40,50
F. [1000] 60
我试过了,但那不是我想要的。我也试过加入。任何人都可以在java解决方案方面提供帮助。
编辑:
我找到了可以做类似事情的约化函数。
dataset.reduce(new ReduceFunction<Grouped>(){
private static final long serialVersionUID = 8289076985320745158L;
@Override
public Grouped call(final Grouped v1, final Grouped v2) {
if (!Collections.disjoint(v1.getGroup(), (v2.getGroup())))
{
v1.getAge().addAll(v2.getAge());
v1.getGroup().addAll(v2.getGroup());
v1.getName().addAll(v2.getName());
}
}
}
但如何对所有行执行此操作???
这可以将前2行缩减为:
Name Group Age
A,B [123,456] 10,20
暂无答案!
目前还没有任何答案,快来回答吧!