当前位置:网站首页 > 数据科学与大数据 > 正文

point数据分析训练营(point数据分析的课程怎么样)



《淘宝双11数据分析与预测课程案例—步骤四:利用Spark预测回头客》

开发团队:厦门大学数据库实验室 联系人:林子雨老师

版权声明:版权归厦门大学数据库实验室所有,请勿用于商业用途;未经授权,其他网站请勿转载

本教程介绍大数据课程实验案例“淘宝双11数据分析与预测”的第五个步骤,利用Spark预测回头客。在实践本步骤之前,请先完成该实验案例的第一个步骤——本地数据集上传到数据仓库Hive,第二个步骤——Hive数据分析,和第三个步骤:将数据从Hive导入到MySQL,这里假设你已经完成了前面的这四个步骤。

这里列出test.csv和train.csv中字段的描述,字段定义如下:

  1. user_id | 买家id
  2. age_range | 买家年龄分段:1表示年龄<18,2表示年龄在[18,24],3表示年龄在[25,29],4表示年龄在[30,34],5表示年龄在[35,39],6表示年龄在[40,49],7和8表示年龄>=50,0和NULL则表示未知
  3. gender | 性别:0表示女性,1表示男性,2和NULL表示未知
  4. merchant_id | 商家id
  5. label | 是否是回头客,0值表示不是回头客,1值表示回头客,-1值表示该用户已经超出我们所需要考虑的预测范围。NULL值只存在测试集,在测试集中表示需要预测的值。

这里需要预先处理test.csv数据集,把这test.csv数据集里label字段表示-1值剔除掉,保留需要预测的数据.并假设需要预测的数据中label字段均为1.

 

上面使用vim编辑器新建了一个predeal_test.sh脚本文件,请在这个脚本文件中加入下面代码:

 

下面就可以执行predeal_test.sh脚本文件,截取测试数据集需要预测的数据到test_after.csv,命令如下:

 

train.csv的第一行都是字段名称,不需要第一行字段名称,这里在对train.csv做数据预处理时,删除第一行

 

然后剔除掉train.csv中字段值部分字段值为空的数据。

 

上面使用vim编辑器新建了一个predeal_train.sh脚本文件,请在这个脚本文件中加入下面代码:

 

下面就可以执行predeal_train.sh脚本文件,截取测试数据集需要预测的数据到train_after.csv,命令如下:

 
 

将两个数据集分别存取到HDFS中

 
 

输入密码后,你就可以进入“mysql>”命令提示符状态,然后就可以输入下面的SQL语句完成表的创建:

 

Spark支持通过JDBC方式连接到其他数据库获取数据生成DataFrame。
下载MySQL的JDBC驱动(mysql-connector-java-5.1.40.zip)
mysql-connector-java-*.zip是Java连接MySQL的驱动包,默认会下载到"~/下载/"目录
执行如下命令:

 

接下来正式启动spark-shell

 

这里使用Spark MLlib自带的支持向量机SVM分类器进行预测回头客,有关更多Spark MLlib中SVM分类器的学习知识,请点击Spark入门:支持向量机SVM分类器进行学习。
在spark-shell中执行如下操作
1.导入需要的包
首先,我们导入需要的包:

 
 

3.构建模型

 

接下来,通过训练集构建模型SVMWithSGD。这里的SGD即著名的随机梯度下降算法(Stochastic Gradient Descent)。设置迭代次数为1000,除此之外还有stepSize(迭代步伐大小),regParam(regularization正则化控制参数),miniBatchFraction(每次迭代参与计算的样本比例),initialWeights(weight向量初始值)等参数可以进行设置。

 
 

spark-shell会打印出如下结果

 

如果我们设定了阀值,则会把大于阈值的结果当成正预测,小于阈值的结果当成负预测。

 
  1. 把结果添加到mysql数据库中
    现在我们上面没有设定阀值的测试集结果存入到MySQL数据中。
 

到这里,第四个步骤的实验内容顺利结束。请继续访问第五个步骤《大数据案例-步骤五:利用ECharts进行数据可视化分析》

到此这篇point数据分析训练营(point数据分析的课程怎么样)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 中文资源数据库8(中文资源数据库8在线电影大全)2025-04-13 22:45:07
  • 达梦数据库端口(达梦数据库端口号被占用)2025-04-13 22:45:07
  • yml文件配置(yml文件配置oracle数据库配置)2025-04-13 22:45:07
  • 数据中台建设方案怎么写的(数据中台建设规划方案)2025-04-13 22:45:07
  • sql文件是什么文件(sql的数据文件是什么)2025-04-13 22:45:07
  • 大数据课程思政案例(大数据课程思政案例题目)2025-04-13 22:45:07
  • oracle10数据库安装步骤(oracle10g数据库安装)2025-04-13 22:45:07
  • 动态库存表视频教程(动态库存表数据不能自动更新)2025-04-13 22:45:07
  • druid数据库连接池配置详解(druid连接池配置文件)2025-04-13 22:45:07
  • 数据库管理员培训机构(数据库管理员考试报名)2025-04-13 22:45:07
  • 全屏图片