diff options
author | Liang-Chi Hsieh <viirya@gmail.com> | 2016-01-13 10:26:55 -0800 |
---|---|---|
committer | Davies Liu <davies.liu@gmail.com> | 2016-01-13 10:26:55 -0800 |
commit | 63eee86cc652c108ca7712c8c0a73db1ca89ae90 (patch) | |
tree | 341aa599d17ca0c723b6ac13d1f57ec512a249c6 /sql/core | |
parent | d6fd9b376b7071aecef34dc82a33eba42b183bc9 (diff) | |
download | spark-63eee86cc652c108ca7712c8c0a73db1ca89ae90.tar.gz spark-63eee86cc652c108ca7712c8c0a73db1ca89ae90.tar.bz2 spark-63eee86cc652c108ca7712c8c0a73db1ca89ae90.zip |
[SPARK-9297] [SQL] Add covar_pop and covar_samp
JIRA: https://issues.apache.org/jira/browse/SPARK-9297
Add two aggregation functions: covar_pop and covar_samp.
Author: Liang-Chi Hsieh <viirya@gmail.com>
Author: Liang-Chi Hsieh <viirya@appier.com>
Closes #10029 from viirya/covar-funcs.
Diffstat (limited to 'sql/core')
-rw-r--r-- | sql/core/src/main/scala/org/apache/spark/sql/functions.scala | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/functions.scala b/sql/core/src/main/scala/org/apache/spark/sql/functions.scala index 592d79df31..71fea2716b 100644 --- a/sql/core/src/main/scala/org/apache/spark/sql/functions.scala +++ b/sql/core/src/main/scala/org/apache/spark/sql/functions.scala @@ -309,6 +309,46 @@ object functions extends LegacyFunctions { countDistinct(Column(columnName), columnNames.map(Column.apply) : _*) /** + * Aggregate function: returns the population covariance for two columns. + * + * @group agg_funcs + * @since 2.0.0 + */ + def covar_pop(column1: Column, column2: Column): Column = withAggregateFunction { + CovPopulation(column1.expr, column2.expr) + } + + /** + * Aggregate function: returns the population covariance for two columns. + * + * @group agg_funcs + * @since 2.0.0 + */ + def covar_pop(columnName1: String, columnName2: String): Column = { + covar_pop(Column(columnName1), Column(columnName2)) + } + + /** + * Aggregate function: returns the sample covariance for two columns. + * + * @group agg_funcs + * @since 2.0.0 + */ + def covar_samp(column1: Column, column2: Column): Column = withAggregateFunction { + CovSample(column1.expr, column2.expr) + } + + /** + * Aggregate function: returns the sample covariance for two columns. + * + * @group agg_funcs + * @since 2.0.0 + */ + def covar_samp(columnName1: String, columnName2: String): Column = { + covar_samp(Column(columnName1), Column(columnName2)) + } + + /** * Aggregate function: returns the first value in a group. * * @group agg_funcs |