Spark一些常用的数据处理方法-2.MLlib基础统计方法

本文介绍了Spark MLlib中常用的数据处理方法,包括基础加载包、标准构造、矩阵操作、相关性分析、分层抽样、随机数据生成、核密度估计和假设检验等。相关性分析用于检验变量间的关系,分层抽样提供了精确的数据子集,随机数据适用于测试,而核密度估计则用于数据的概览表示。
摘要由CSDN通过智能技术生成

SparkMLlib中会经常对RDD用到统计方法,其用法如下

2.1 基础加载包


//向量
import org.apache.spark.mllib.linalg.Vector

//向量集
import org.apache.spark.mllib.linalg.Vectors

//稠密向量
import org.apache.spark.mllib.linalg.DenseVector

//实例
import org.apache.spark.mllib.stat.{MultivariateStatisticalSummary, Statistics}

//矩阵
import org.apache.spark.mllib.linalg.{Matrix, Matrices}

//索引矩阵
import org.apache.spark.mllib.linalg.distributed.RowMatrix

//RDD
import org.apache.spark.rdd.RDD

2.2 标准构造


//创建一个RDD[Vector]
val rdd1 = sc.parallelize(Array(Array(1.0, 2.0, 3.0, 4.0), Array(2.0, 3.0, 4.0, 5.0), Array(3.0, 4.0, 5.0, 6.0))).map(f => Vectors.dense(f))
val rows: RDD[Vector] = rdd1

//或者创建一个矩阵将这个矩阵转化
def toRDD(m: Matrix): RDD[Vector] = {
val columns = m.toArray.grouped(m.numRows)
val rows = columns.toSeq.transpose
val vectors = rows.map(row => new DenseVector(row.toArray))
sc.parallelize(vectors)
}

//将这个RDD转变为MultivariateStatisticalSummary

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值