Repository: incubator-hivemall
Updated Branches:
  refs/heads/master 88fae5208 -> 892ae1c16


Close #30: [HIVEMALL-37][SPARK] Support a SST-based change-point detector in 
DataFrame/Spark


Project: http://git-wip-us.apache.org/repos/asf/incubator-hivemall/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-hivemall/commit/892ae1c1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hivemall/tree/892ae1c1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hivemall/diff/892ae1c1

Branch: refs/heads/master
Commit: 892ae1c160bc4166f7b80ebb16b0aac1705ae805
Parents: 88fae52
Author: Takeshi YAMAMURO <[email protected]>
Authored: Fri Jan 27 12:08:21 2017 +0900
Committer: Takeshi YAMAMURO <[email protected]>
Committed: Fri Jan 27 12:08:21 2017 +0900

----------------------------------------------------------------------
 .../scala/org/apache/spark/sql/hive/HivemallOps.scala | 14 ++++++++++++++
 .../org/apache/spark/sql/hive/HivemallOpsSuite.scala  |  7 +++++++
 2 files changed, 21 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-hivemall/blob/892ae1c1/spark/spark-2.0/src/main/scala/org/apache/spark/sql/hive/HivemallOps.scala
----------------------------------------------------------------------
diff --git 
a/spark/spark-2.0/src/main/scala/org/apache/spark/sql/hive/HivemallOps.scala 
b/spark/spark-2.0/src/main/scala/org/apache/spark/sql/hive/HivemallOps.scala
index 6e588a9..28653a5 100644
--- a/spark/spark-2.0/src/main/scala/org/apache/spark/sql/hive/HivemallOps.scala
+++ b/spark/spark-2.0/src/main/scala/org/apache/spark/sql/hive/HivemallOps.scala
@@ -41,6 +41,7 @@ import org.apache.spark.unsafe.types.UTF8String
  * @groupname classifier
  * @groupname classifier.multiclass
  * @groupname xgboost
+ * @groupname anomaly
  * @groupname knn.similarity
  * @groupname knn.distance
  * @groupname knn.lsh
@@ -856,6 +857,19 @@ object HivemallOps {
   }
 
   /**
+   * @see [[hivemall.anomaly.SingularSpectrumTransformUDF]]
+   * @group anomaly
+   */
+  @scala.annotation.varargs
+  def sst(exprs: Column*): Column = withExpr {
+    planHiveGenericUDF(
+      "hivemall.anomaly.SingularSpectrumTransformUDF",
+      "sst",
+      exprs
+    )
+  }
+
+  /**
    * @see [[hivemall.knn.similarity.CosineSimilarityUDF]]
    * @group knn.similarity
    */

http://git-wip-us.apache.org/repos/asf/incubator-hivemall/blob/892ae1c1/spark/spark-2.0/src/test/scala/org/apache/spark/sql/hive/HivemallOpsSuite.scala
----------------------------------------------------------------------
diff --git 
a/spark/spark-2.0/src/test/scala/org/apache/spark/sql/hive/HivemallOpsSuite.scala
 
b/spark/spark-2.0/src/test/scala/org/apache/spark/sql/hive/HivemallOpsSuite.scala
index 493feda..bab5085 100644
--- 
a/spark/spark-2.0/src/test/scala/org/apache/spark/sql/hive/HivemallOpsSuite.scala
+++ 
b/spark/spark-2.0/src/test/scala/org/apache/spark/sql/hive/HivemallOpsSuite.scala
@@ -30,6 +30,13 @@ import org.apache.spark.test.TestFPWrapper._
 
 final class HivemallOpsWithFeatureSuite extends HivemallFeatureQueryTest {
 
+  test("anomaly") {
+    import hiveContext.implicits._
+    val df = spark.range(1000).selectExpr("id AS time", "rand() AS x")
+    // TODO: Test results more exactly
+    assert(df.sort($"time".asc).select(sst($"x", lit("-th 0.005"))).count === 
1000)
+  }
+
   test("knn.similarity") {
     val df1 = DummyInputData.select(cosine_sim(lit2(Seq(1, 2, 3, 4)), 
lit2(Seq(3, 4, 5, 6))))
     assert(df1.collect.apply(0).getFloat(0) ~== 0.500f)

Reply via email to