LocalMatrix本地矩阵
2021-01-23 本文已影响0人
bigdata张凯翔
package cn.li.localvector
/**
* 局部矩阵具有整数类型的行和列索引和双类型值,存储在单个机器上。
* MLlib支持密集矩阵,其入口值以列主序列存储在单个双阵列中,稀疏矩阵的
* 非零入口值以列主要顺序存储在压缩稀疏列(CSC)格式中。例如,以下密集矩阵
*
* 局部矩阵的基类是Matrix
* 我们提供了两个实现:DenseMatix和SparseMatix 。我们建议使用Matices中实现的工厂方法来创建矩阵。
* 记住,MLlib中的局部矩阵以列主要顺序存储。
*/
object LocalMatrix {
def main(args: Array[String]): Unit = {
import org.apache.spark.mllib.linalg.Matrix
import org.apache.spark.mllib.linalg.Matrices
//Create a dense matrix(1.0,2.0),(3.0,4.0),(5.0,6.0)
val dm: Matrix = Matrices.dense(3,2,Array(1.0,3.0,5.0,2.0,4.0,6.0))
println(dm(2,0))
//Create a sparse matrix((9.0,0.0),(0.0,8.0),(0.0,6.0))
val sm: Matrix = Matrices.sparse(3,2,Array(0,1,3),Array(0,2,1),Array(9,6,8))
println(dm(2,1))
}
}