20-0使用mllib机器学习库.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Spark 大数据技术与应用 第七章 Spark 机器学习库 课前回顾 机器学习一般流程 ? ( 1 )准备数据 ? ( 2 )训练模型 ? ( 3 )模型评估 03 使用 MLlib 机器学习库 ——实战 MLlib 搭建环境 ? Pycharm 编辑器 工具 ? import os ? os.environ[JAVA_HOME]=/usr/jdk64/jdk1.8.0_112/ 配置运行环境 ? os.environ[PYSPARK_PYTHON]=/anaconda/anaconda3/bin/python ? from pyspark import SparkContext,SparkConf,SQLContext 初始化 spark 集 群入口 ? sc=SparkContext.getOrCreate(SparkConf().setAppName(MLlib_demo)) ? spark=SQLContext(sc) 加载数据 import pyspark.sql.types as typ labels = [ (INFANT_ALIVE_AT_REPORT, typ.StringType()), … ] schema = typ.StructType([ typ.StructField(e[0], e[1], False) for e in labels]) # 加载数据并指定 schema births = spark.read.csv( /home/anaconda/spark/births_train.csv , header=True, schema=schema) 加载数据 字典映射: recode_dictionary = { YNU: { Y: 1 , N: 0 , 2018 U: 0 } } put Student, 0001, StuInfo:Name,Tom Green 加载数据 MOTHER_HEIGHT_IN , selected_features = [ INFANT_ALIVE_AT_REPORT , BIRTH_PLACE , MOTHER_PRE_WEIGHT , MOTHER_DELIVERY_WEIGHT , MOTHER_WEIGHT_GAIN , DIABETES_PRE , DIABETES_GEST , HYP_TENS_PRE , MOTHER_AGE_YEARS , FATHER_COMBINED_AGE , CIG_BEFORE , CIG_1_TRI , CIG_2_TRI , CIG_3_TRI , ] HYP_TENS_GEST , PREV_BIRTH_PRETERM births_trimmed = births.select(selected_features) 加载数据 特征字典映射: import pyspark.sql.functions as func #recode() 方法从 recode_dictionary 中 返回 key 对应的值 def recode(col , key): return recode_dictionary[key][col] # correct_cig 方法 检查特征 feat 的值何时不等于 99 不等于 99 ,则返回特征的值 等于 99 ,则返回 0 def correct_cig(feat): return func \ .when(func.col(feat) != 99 , func.col(feat))\ .otherwise(0) 函数调用 rec_integer = func.udf(recode , typ.IntegerType()) 加载数据 births_transformed = births_trimmed \ .withColumn(CIG_BEFORE, correct_cig(CIG_BEFORE))\ .withColumn(CIG_1_TRI, correct_cig(CIG_1_TRI))\ 纠正与吸烟有关的特征 .withColumn(CIG_2_TRI, correct_cig(CIG_2_TRI))\ .withColumn(CIG_3_TRI, correct_cig(CIG_3_TRI)) 加载数据 cols = [(col.name, col.dataType) for col in births_trimmed.schema] YNU_cols = [] 找出哪些特征是 Yes/No/Unknown : for i, s in enumerate(cols): if s[1] == typ.StringT

文档评论(0)

jinzhuang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档