Spark-Mllib(二)基本统计

一.基本统计量

统计向量的长度,最大值,最小值,非0个数,模1和模2,方差等

import org.apache.spark.mllib.linalg.{Vector,Vectors}

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

val data=sc.parallelize(1 to 100,2)

val obs=data.map(x=>Vectors.dense(x))

 val summary=Statistics.colStats(obs)

summary.mean

summary.max

 

二.相关系数

import org.apache.spark.SparkContext

import org.apache.spark.mllib.linalg._

import org.apache.spark.mllib.stat.Statistics

 

val x=sc.parallelize(1 to 3,2).map(_.toDouble)

val y=sc.parallelize(1 to 3,2).map(_.toDouble)

val correlation: Double = Statistics.corr(x, y, "pearson")

 

val data=sc.textFile("coo1").map(_.split(',')).map(_.map(_.toDouble)).map(x=>Vectors.dense(x))

val correlMatrix: Matrix = Statistics.corr(data, "pearson")

 

三.分成抽样

import org.apache.spark.SparkContext

import org.apache.spark.SparkContext._

import org.apache.spark.rdd.PairRDDFunctions

val info=sc.parallelize(List(('a',2),('a',3),('b',1),('b',3),('c',10),('d',100)))

val ff=Map('a'->0.5,'b'->1.0)

val infosample=info.sampleByKey(withReplacement = false, fractions=ff)

 

 

四.假设检验

假设检验是用于检测结果是否统计显著,事件结果是否偶然,mllib目前 提供pearson卡方检验用于计算拟合优度检验和独立检验,

前者需要向量作为输入,后者需要矩阵作为输入

卡方拟合优度检验,一般用于检验样本是否符合某分布,理论频数与实际频数的偏差. 如果分布的参数未知,可考虑用mle

卡方独立性检验,一般针对列链表的形式,理论频数与实际频数的偏差。

 

 

 

 

五.kernel估计

kernal理论基础,参考Walter Zucchini的文章,主要介绍了几部分:

a.f(x)的估计

b.bandwidth的大小对f(x)估计的影响

c.w(t,h)与kernel函数的关系,w(t,h)=1/h * k(t/h)

d.最佳窗宽的选择,根据MISE最小化 [1/n*y(K)/b(f)]^(1/5),其中y(K)=j2*k2^-2

e.最佳kernel:Epanechnikov kernel 

f.利用样本选择最佳窗框

 

转载于:https://www.cnblogs.com/tuitui1989/p/5337968.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值