如何在烫伤中一次平均几个列?

y53ybaqx  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(309)

作为用滚烫法进行某些计算的最后一步,我想计算管道中各列的平均值。但是下面的代码不起作用

myPipe.groupAll { _average('col1,'col2, 'col3) }

有没有办法计算这些函数 sum, max, average 不做几次传球?我很关心性能,但也许烫伤足够聪明,可以通过编程检测到这一点。

2wnc66cl

2wnc66cl1#

您可以使用下面的函数一次性完成size(aka count)、average和standarddev。

// Find the count of boys vs. girls, their mean age and standard deviation. 
// The new pipe contains "sex", "count", "meanAge" and "stdevAge" fields.
val demographics = people.groupBy('sex) { _.sizeAveStdev('age -> ('count, 'meanAge, 'stdevAge) ) }

不过,要找到马克斯还需要另一个关卡。

qncylg1j

qncylg1j2#

这个问题在层叠用户论坛上得到了回答。留下答案作为参考

myPipe.groupAll { _.average('col1).average('col2).average('col3) }

相关问题