如何在 Spark 的 github 中查看 Functions.Scala 中的代码

Posted

技术标签:

【中文标题】如何在 Spark 的 github 中查看 Functions.Scala 中的代码【英文标题】:How can I see the code in Functions.Scala in Spark's github 【发布时间】:2016-06-20 12:51:44 【问题描述】:

https://github.com/apache/spark/blob/master/sql/core/src/main/scala/org/apache/spark/sql/functions.scala

我正在尝试为 spark 1.5 的标准偏差编写自己的 UDF,并希望看到 1.6 的实现。谢谢。如果这是不可能的,我将如何编写一个 udf 来计算给定其 columnName 的列的标准偏差:(在 scala 中):

def stddev(columnName: String): Column =

【问题讨论】:

def stddev(columnName: Column): Column = sqrt(avg(columnName * columnName) - avg(columnName) * avg(columnName)) 这就是我想出的。谁能确认这是否正确? 【参考方案1】:

您可以在聚合中使用UDF 计算标准差,如下所示:

val df = sc.parallelize(Seq(1,2,3,4)).toDF("myCol")
df.show

>+-----+
>|myCol|
>+-----+
>|    1|
>|    2|
>|    3|
>|    4|
>+-----+

def stddev(col: Column): Column = sqrt(avg(col * col) - avg(col) * avg(col))
df.agg(stddev($"myCol")).first

> [1.118033988749895]

【讨论】:

以上是关于如何在 Spark 的 github 中查看 Functions.Scala 中的代码的主要内容,如果未能解决你的问题,请参考以下文章

如何指定Spark2作业中Driver和Executor使用指定范围内端口

0644-5.16.1-如何在CDH5中使用Spark2.4 Thrift

查看Spark任务的详细信息

0539-5.15.0-HBase-Spark无法在Spark2编译通过问题解决

如何使用Spark Streaming读取HBase的数据并写入到HDFS

如何查看spark中rdd的内容