spark mlib行矩阵(RowMatrix)入门
- 行矩阵
RowMatrix
是最基础的分布式矩阵类型。 - 每行是一个
本地向量
,行索引无实际意义(即无法直接使用)。 - 数据存储在一个由行组成的RDD中,其中每一行都使用一个本地向量来进行存储。
- 由于行是通过本地向量来实现的,故列数(即行的维度)被限制在普通整型(integer)的范围内。
- 在实际使用时,由于单机处理本地向量的存储和通信代价,行维度更是需要被控制在一个更小的范围之内。
RowMatrix
可通过一个RDD[Vector]
的实例来创建
例子
import org.apache.spark.mllib.linalg
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.linalg.distributed.RowMatrix
import org.apache.spark.mllib.stat.MultivariateStatisticalSummary
import org.apache.spark.rdd.RDD
import org.apache.spark.sql.SparkSession
object Test {def main(args: Array[String]): Unit = {val spark: SparkSession = SparkSession.builder().master("local").getOrCreate()//创建稠密向量val dv1: linalg.Vector = Vectors.dense(1.0, 2.0, 3.0)val dv2: linalg.Vector = Vectors.dense(2.0, 3.0, 4.0)//使用两个本地向量创建一个RDD[Vector]val rows: RDD[linalg.Vector] = spark.sparkContext.parallelize(Array(dv1, dv2))//通过RDD[Vector]创建一个行矩阵val matrix = new RowMatrix(rows)//获取矩阵的行数println(matrix.numRows())//2//获取矩阵的列数println(matrix.numCols())//3//通过computeColumnSummaryStatistics()方法获取统计摘要val summary: MultivariateStatisticalSummary = matrix.computeColumnSummaryStatistics()val max: linalg.Vector = summary.max//最大向量println(max)//[2.0,3.0,4.0]//平均向量println(summary.mean)//[1.5,2.5,3.5]println(summary.count)//2//方差向量println(summary.variance)//[0.5,0.5,0.5]}
}
总结
- 可以通过
Vector
构建RowMatrix
参考
Spark入门:MLlib基本数据类型(2)_厦大数据库实验室博客
spark mlib行矩阵(RowMatrix)入门相关推荐
- Spark MLib 数据类型
Spark MLib 数据类型 1. MLlib Apache Spark's scalable machine learning library, with APIs in Java, Scala ...
- fpgrowth算法实战 mlib_【spark】41.Spark Mlib:FPGrowth算法
简介 FP-Growth算法是韩嘉炜等人在2000年提出的关联分析算法,它采取如下分治策略:将提供频繁项集的数据库压缩到一棵频繁模式树(FP-tree),但仍保留项集关联信息. 在算法中使用了一种称为 ...
- Spark Mlib TFIDF源码详读 笔记
2019独角兽企业重金招聘Python工程师标准>>> 在提取文本特征时,经常用到TF-IDF算法.Spark Mlib实现了该算法.下面是Spark Mlib中,TF_IDF算法调 ...
- 利用Spark MLIB实现电影推荐
利用Spark MLIB实现电影推荐 源码及数据集:https://github.com/luo948521848/BigData Spark 机器学习库MLLib MLlib是Spark的机器学习( ...
- spark mlib入门
MLlib 是 Spark 的机器学习 (ML) 库.其目标是使实用的机器学习变得可扩展且简单.在高级别上,它提供了各种工具:: ML 算法:常见的学习算法,如分类.回归.聚类和协作筛选 实现:特征提 ...
- spark mlib坐标矩阵(Coordinate Matrix)
坐标矩阵CoordinateMatrix是一个基于矩阵项构成的RDD的分布式矩阵.每一个矩阵项MatrixEntry都是一个三元组:(i: Long, j: Long, value: Double), ...
- spark mlib行索引矩阵
索引行矩阵IndexedRowMatrix与RowMatrix相似,但它的每一行都带有一个有意义的行索引值,这个索引值可以被用来识别不同行,或是进行诸如join之类的操作. 其数据存储在一个由Inde ...
- Spark Streaming 编程新手入门指南
Spark Streaming 是核心Spark API的扩展,可实现实时数据流的可伸缩,高吞吐量,容错流处理.可以从许多数据源(例如Kafka,Flume,Kinesis或TCP sockets)中 ...
- python编写spark程序 视频_【Python版pyspark】Spark大数据基础入门视频课程
[注意:本课程只包含pyspark系列课程的基础入门部分] Python版本的pyspark是学习Python的人的福音,为广大的Python开发人员提供了一个使用Python调用Spark接口处理大 ...
最新文章
- JVM - 一个案例反推不同JDK版本的intern机制以及intern C++源码解析
- 图像检索:基于形状特征的算法
- 向MySQL数据库中插入数据,sql语句没问题,但插入失败也不报错?
- datagrid出现相同两组数据_数据分析之统计学
- 自编码器(Auto-encoder) (上) – 基本概念
- 【MobaXterm】设置保持SSH连接
- Git 分支相关操作
- linux配置conf_如何使用mssql-conf和其他可用工具在Linux上配置SQL Server 2017
- Oracle学习笔记:手工注册oracle的oledb驱动
- 乘法器的Verilog HDL实现
- 判断鼠标不在控件上_【干货】Eprime编写鼠标点击型记忆再认实验
- 【九度OJ1348】|【剑指offer36】数组中的逆序对
- 北京计算机学校招生要求,北京小升初 16区采取电脑随机录取的入学途径及规则 2021家长一定要看...
- iOS 汉语数字与阿拉伯数字的相互转化
- 互联网行业公司岗位与发展方向
- oppo文件管理android在哪里,OPPO手机中缓存视频文件路径在哪里查看?怎么查看?
- 大于23的男生女生都该看.看完你会变一个人
- 【硬核干货】Teleport Ultra扒站教程 (附汉化破解版资源下载链接)
- java如何实现导出Excel(附源码)--文末送书
- Java的Lambda表达式实例
热门文章
- CNN中input,output的计算推导
- 关于Python切片的问题,从左向右提取元素与从右向左提取元素
- windows系统bat批处理 一键添加共享打印机
- spring学习--JdbcTemplate-查询返回-批量操作
- beetl java例子_初识Java模板引擎Beetl之简单示例
- 在PHP中2中特殊数据类型是,@PHP中的数据类型(2)
- python抓包与解包_python 抓包与解包
- fiddler everywhere使用_用Fiddler抓取iOS https流量
- python将列表写入文件_Python将列表数据写入文件(txt, csv,excel)
- python中最基本的系列_Python中最基本的10个内容