基于sparkMLlib的机器学习_[1]_基本数据类型[1]本地向量

来源:互联网 发布:淘宝海尔官方旗舰店 编辑:程序博客网 时间:2024/05/18 02:43

基于sparkMLlib的机器学习_[1]_基本数据类型[1]MLLIB中基本数据类型

参考:《spark MLlib机器学习实践》《SPARK MLLIB机器学习  算法、源码及实战详解》http://spark.apache.org/docs/latest/ml-guide.html

1-基本数据类型

Local vector 本地向量Labeled point 向量标签Local matrix 本地矩阵Distributed matrix 分布式矩阵

2-数据格式

整数和浮点型

1-1 本地向量

(1)稀疏型:spare

def sparse(size : scala.Int, indices : scala.Array[scala.Int], values : scala.Array[scala.Double])第一个参数:大于等于向量个数, 第二个参数:为values的index(可以跳过某些参数,但必须递增),第三个参数:元素值def sparse(size : scala.Int, elements : scala.Seq[scala.Tuple2[scala.Int, scala.Double]])def sparse(size : scala.Int, elements : java.lang.Iterable[scala.Tuple2[java.lang.Integer, java.lang.Double]])

(2)密集型:dense

/*1-基本数据类型:Local vector   本地向量Labeled point  向量标签Local matrix   本地矩阵Distributed matrix 分布式矩阵2-数据格式:整数和浮点型1-1 本地向量稀疏型:spares  def sparse(size : scala.Int, indices : scala.Array[scala.Int], values : scala.Array[scala.Double])  第一个参数:大于等于向量个数, 第二个参数:为values的index(可以跳过某些参数,但必须递增),第三个参数:元素值  def sparse(size : scala.Int, elements : scala.Seq[scala.Tuple2[scala.Int, scala.Double]])  def sparse(size : scala.Int, elements : java.lang.Iterable[scala.Tuple2[java.lang.Integer, java.lang.Double]])密集型:dense */object LocalVector {  def main(args: Array[String]) {   //====dense    val vd:Vector = Vectors.dense(1,2,3,4) // spark.mllib.linalg.{Vectors,Vector}包下的密集型向量    println(vd(2))    //    3.0    //====sparse    val vs:Vector = Vectors.sparse(5,Array(0,1,3,4),Array(1,2,3,4))    println(vs(4))    //    3.0    val vs2:Vector = Vectors.sparse(5,Array(0,1,4,3),Array(1,2,3,4))    println(vs2(4))    //    0.0  必须按递增    val vs3:Vector = Vectors.sparse(5,Array((1,1.0),(2,2.0)))    println(vs3(1))    //1.0  }}



0 0
原创粉丝点击