我对级联非常陌生。现在我知道如何使用 Cascading 进行字数统计了。接下来我想做一些 Sum 操作。例如,我有以下输入:
a b c 1000
c d e 2000
a s e 5000
我想对最后一个字段求和。如果我只是选择该字段并执行 COUNT 它会给我这样的输出:
1000 1
2000 1
5000 1
这不是我想要的!!我想对所有这 3 个数字求和,并给它一个名为“持续时间”的名称,如下所示:
duration 8000
我可以将这个字段命名为“持续时间”,但我不知道如何对它本身求和,并在输出到文件时将关键工作“持续时间”放在前面。
这是我试过的代码:
... // get duration Field
// determine the word counts
Pipe pipe = new Pipe("pipe", docPipe);
pipe = new GroupBy(pipe, new Fields("duration"));
pipe = new Every(pipe, Fields.ALL, new Count(), Fields.ALL);
但它给了我上面显示的错误输出。
也许我不应该使用 Count,但我尝试了 SumBy 它仍然不起作用。谁能帮我?