注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

阿弥陀佛

街树飘影未见尘 潭月潜水了无声 般若观照心空静...

 
 
 

日志

 
 
关于我

一直从事气象预报、服务建模实践应用。 注重气象物理场、实况场、地理信息、本体知识库、分布式气象内容管理系统建立。 对Barnes客观分析, 小波,计算神经网络、信任传播、贝叶斯推理、专家系统、网络本体语言有一定体会。 一直使用Java、Delphi、Prolog、SQL编程。

网易考拉推荐

Norm2 测试  

2017-02-22 06:34:53|  分类: Spark |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
package lsh
import model.hour.ml.LocalSparkSession
import org.apache.spark.ml.feature.Normalizer
import org.apache.spark.ml.linalg.{DenseVector, SparseVector, Vector, Vectors}
import org.apache.spark.sql.{DataFrame, Row, SQLContext, SQLImplicits}

/**
* Created by 何险峰,维也纳 on 2017/2/20.
*/
object NormTest {
import testImplicits._
val spark = LocalSparkSession.ss
val data = Array(
Vectors.sparse(3, Seq((0, -2.0), (1, 2.3))),
Vectors.dense(0.0, 0.0, 0.0),
Vectors.dense(0.6, -1.1, -3.0),
Vectors.sparse(3, Seq((1, 0.91), (2, 3.2))),
Vectors.sparse(3, Seq((0, 5.7), (1, 0.72), (2, 2.7))),
Vectors.sparse(3, Seq())
)
val dataFrame = data.map(NormalizerSuite.FeatureData).toSeq.toDF()

val normalizer = new Normalizer()
.setInputCol("features")
.setOutputCol("normalized_features")

def main(args: Array[String]): Unit = {
val rsl = do_l2
val ss = rsl
.map(f => f.toArray.map(g => s"%.2f".format(g)))
.map(f => f.mkString(","))
.mkString("\n")
println(ss)
}
def do_l2 ={
val result = collectResult(normalizer.transform(dataFrame))
assertTypeOfVector(data, result)
result
}
def assertTypeOfVector(lhs: Array[Vector], rhs: Array[Vector]): Unit = {
assert((lhs, rhs).zipped.forall {
case (v1: DenseVector, v2: DenseVector) => true
case (v1: SparseVector, v2: SparseVector) => true
case _ => false
}, "The vector type should be preserved after normalization.")
}

def collectResult(result: DataFrame): Array[Vector] = {
result.select("normalized_features").collect().map {
case Row(features: Vector) => features
}
}
}
private object NormalizerSuite {
case class FeatureData(features: Vector)
}
private object testImplicits extends SQLImplicits {
protected override def _sqlContext: SQLContext = LocalSparkSession.ss.sqlContext
}
-0.66,0.75,0.00
0.00,0.00,0.00
0.18,-0.34,-0.92
0.00,0.27,0.96
0.90,0.11,0.43
0.00,0.00,0.00
  评论这张
 
阅读(17)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017