pyspark 数据写入hive_pyspark挖掘数据(1)-频繁集挖掘FPGrowth

作为一个pyspark使用者,

一直在啃官方文档,

但是官方的样例一直太简单,

我想试着写一些可以拿来用的的样例。

使用pyspark mlib进行频繁集挖掘,

是一个可行的方案,

运行速度上很快

面向大数据,

开发速度很快。

痛苦点在于,

真的很难找到使用者,

也很难找到社群,

国内很少有人懂。

我不会去讲什么fpm的算法,

这不是我需要赘述的,

CSDN上多得是。

在这里我没有写如何去配置zepplin服务器。

只写了如何读取,

如何写入hive库。

from pyspark import SparkContext,SparkConf,StorageLevel
from pyspark.sql import HiveContext
from pyspark.mllib.fpm import FPGrowth
#1.load data
hc = HiveContext(sc)
sql = "select partyno,prodno from testdata"
data = hc.sql(sql)
#2.transform data
data = data.fillna(0,data.columns)
data.count()
trandata =data.map(lamda x:(x[0],x[1]))
pastvalue = trandata.reduceByKey(lambda x,y: x+','+y)
transactions = pastvalue.map(lambda (k,v)): v.split(','))
#3.model
model = FPGrowth.train(transactions,minSupport=0.00001,numPartitions=1)
#4.result
result=model.freqItemsets()
result.toDF().registerTempTable("table1")
hc.sql("create table result as select * from table1")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值