dataframe列与spark scala中的数组之间的不同总和

时间:2018-05-02 08:06:39

标签: scala apache-spark apache-spark-sql spark-dataframe

数据框只有一列“年龄”,它有1.4亿行。 例如,df.agg(sum("age"))df.rdd.map(x=>x(0).toString.toFloat).sum会获得不同的值。它们之间差异几乎是三倍。

1 个答案:

答案 0 :(得分:2)

这是因为浮点类型的有效数量不够,所以最后的总和小于实际结果。 array.map(_.toDouble).sum时,结果是正确的。