欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    《Spark大数据技术与应用案例教程》教案第16课提取鸢尾花的特征.docx

    • 资源ID:1242649       资源大小:53.56KB        全文页数:9页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《Spark大数据技术与应用案例教程》教案第16课提取鸢尾花的特征.docx

    课题提取莺尾花的特征课时2课时(90min)教学目标知识技能目标:(1)掌握常用的特征提取算法(2)掌握常用的特征转换算法(3)掌握常用的特征选择算法素质目标:(1)能熟练运用机器学习算法解决日常生活中的数据分析问题(2)培养自主学习意识,提升实践操作能力教学重难点教学重点:SParkMLlib的特征取、特征转换和特征!蟒教学难点:使用SparkMLlib的特征提取、特征转换和特征选择等特征化工具处理数据教学方法案例分析法、问答法、讨论法、讲授法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤课前任务【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其他学习软件,完成课前任务了解SParkMLlib的特征提取、特征转换和特征选择算法。【学生】完成课前任务考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】提出以下问题:什么是数据特征?【学生】思考、举用答传授新知【教师】通过学生的回答引入新知,介绍特征提取、特征转换和特征选择的相关知识一、特征提取特征提取是指从原始数据中提取有用的、可数的、可比较的特征的过程。它可以将复杂的数据转换成便于分析和处理的数据形式,同时减少计算量和存储空间.pyspark.ml包椅共的梯睡取算;抱括TF-IDFxWord2Vec等,1.TF-IDF【教师】介绍TF-IDF算法词频-逆文档频率(termfrequency-inversedocumentfrequency.TF-IDF)算法是文本挖掘领域常用的特征提取方法。它用于评估一个词语对于语料库中的某个文档的重要程度,可应用于搜索引擎、推荐系统、文本分类、聚类分析等多个领域。词频(termfrequency,TF)表示一词语在文档中出现的频率。逆文档频率(inversedocumentfrequency,IDF)用于衡量一个词语在整个语料库中的稀有程度。TF-IDF算法的工作原理如下。一、笛T怀闩怀某个词语在文档中出现的次数(1)计算词频。词频=-FWsV、-文档的总词语数c,也.西怀宓b地幅它1(语料库的文档总数、(2)计算逆文档频率。逆文粕频率一log(有小2、干五的五工也将J。包含该词语的文档数+1(3)计算TF-IDF.TF-IDF=词频?逆文档频率在SparkMLlib中,TF-IDF算法的实现步骤如下。首先使用HaShingTFo方法计算词频,该方法的基本格式如下。HashingTF(inputCol,OutputCol,numFeatures,binary)其中,参数inputCol表示输入列的名称;参数OUlPUtCOI表示输出列的名称;参数numFeatures(可选)表示特征向量的维度大小,默认值为262144;参数binary(可选)表示是否将特征向量中的非零值设置为1,默认值为FalSe.然后使用IDFO方法计算每个词语的TFIDF度量值,该方法的基本格式如下。IDF(inputCol,otputCol,minDocFreq)其中,参数inputCol表示输入列的名称,该输入列为HaShingTF()方法的输出列;参数OUtPUlCOI表示输出列的名称;参数minDocFreq(可选)表示词语至少出现在语料库中的minDocFreq个文档中才会被考虑,默认值为Oe【教师】通过例子,帮助学生掌握TF-IDF算法的应用【例5-1使用TF-IDF算法计算每个词语的TF-IDF度量值,输出结果如图5-5所示。IIIabeISlfeatures1二二:二二二二二二二二;二二二二二二二二二二二二二二二二二二二二二二二二二二二二二二二二0I(2000.(202,467.845.891,1209,1263.1286.1S8J.1720,1996,(O.M471S05599453.0.W31471805599453.0.69314718055M4S3,0.0.0.28768207245178085.0.6931471805599453,0.28768207245178085,0.6931471805599453,0.6931471805599453.0.6931471805S99453)I|1(2000.(66.BO,344,466,6690,S91.1048.1209.1S7S,1585,169S).(0.693147180S5994S3.0.69314nBOSS9MS3.0.6931471SOSS99453.06931471805599453,0.6931471805599453.0.6931471805599453,0.0.0.6931471805599453.0.28768207245178085.0.6931471805599453.0.28768207245178085.0.28768207245178085)2I(2000.(7.40.312.488.547.K3JS1.891,1286.1S85.1605.1695J.(0.69n47180559945J.0.693H71805SMS3,0.6931471SOSS9M53.0.6931471805599453,0.6931471805S99453,0.6931471805599453.0.6931471805599453,0.0.0.28768207245178085,0.28768207245178085,0.6931471805599453t0.28768207245178085)|图5-5TFlDF算法的输出结果hadoopbogon-$pyspark»>frompyspark.ml.featureimportHashingTF,IDF»>frompyspark.sql.functionsimportsplit#定义数据»>data=(0,"ApacheSparkisafastandgenera!-purposeclustercomputingsystem"),(1,"Hadoopisanopen-sourcesoftwareframeworkforstoringandprocessingbigdata"),(2,"SparkandHadoopareoftenusedtogethertoprocesslarge-scaledatasets")# 创建DataFrame»>df=spark.createDataFrame(data,"labels","text")# 将text列的文本拆分为单词,并将该列的列名修改为words»>df=df.withColumn("words",split(df.tex(,"',)# 创建HashingTF对象»>hashingTF=HashingTF(inputCol=',words",OutputCol="rawFeatures",numFeatures=2(XX)# 执行转换操作,应用HaShingTF模型进行数据转换»>featurizedDa(a=hashingTF.transfrm(df)# 创建IDF对象»>idf=IDF(inputCol="rawFeatures",OutputCol="features'*)# i川练IDF模型»>idfModel=idf.fit(FeaturizedData)# 应用IDF模型进行数据转换»>rescaledData=idfModel.transfbn(featurizedData)#选择标签和特征列并显示结果>>>rescaledData-select("labeIs","features").shoWftnmcate=False)【高手点拨】DataFrame的withColumn(columnName,COl)方法用于在现有DataFrame中添加、替换或修改列。其中,参数COlumnName表示要添加或修改的列的名称;参数col表示要添加或替换的列的值或表达式。在机器学习中,训练和测试模型的数据集可以不同也可以相同,即可以将数据集划分为训练集和测试集,也可以不划分。SparkMLIib提供了一些训练好的模型,开发人员可以直接使用transfOrm()方法应用这些模型对数据进行转换操作。输出结果中特征列features的数据说明如表5-2所示。表5-2输出结果中特征列的数据说明特征列数据说明2000代表特征向量的维度大小为2000202.467,845,891.1209,1263,1286.1583.1720,1996oApache,Spark,is,a,fast,and,general-purpose,cluster,computing,system*的哈希值0.6931471805599453,0.6931471805599453,0.6931471805599453.0.6931471805599453表示每个词语的TF-IDF度量值2.Word2Vec【教师】介绍WordZVec算法词向量(Word2Vec)是一种基于神经网络的自然语言处理模型,用于将词语表示为高维向量。WOrd2Vec模型一旦训练完成,就可以使用该模型获得每个词语的向量表示.这些向量可以作为输入特征用于各种任务,如文档分类、情感分析和推荐系统等。WOrd2Vec()方法的基本格式如下。Word2Vec(inputCol,outputCol,VectorSize,minCount,Partitions,maxIter,StepSize,seed,windowSize,maxSentenceLength,inputTokenizer,OutputWordEmbeddings)其中,常用参数的含义如下。inputCol:表示输入列的名称.OUtPUICol:表示输出列的名称。(详见教材)【小提示】本书只讲解每个方法的常用参数,未提到的参数请自行查阅官方文档进行学习。【教师】通过例子,帮助学生掌握Word2VeC算法的应用【例5-2使用VVord2Vec算法将单词表示为高维向量,输出结果如图5-6所示。hadoop()bogon$pyspark»>frompyspark.ml.featureimportWord2Vec»>frompyspark.sql.functionsimportsplit,col#定义一些句子,每个句子分解为单词组成的列表»>Seq="IheardaboutSparkandIloveSpark".split(""),"IwishJavacouldusecaseclasses".split(","),"Logisticregressionmodelsareneat".split("")1顺建DataFrame,将列表中的每个元素转换为一行数据,并将列名命名为"text"»>df=spark.createDataFrame(s,)forsinseq,"text")舱!J建Word2Vec对象,设置输入和输出列、词向量的维度大小和最小词频»>word2Vec=Word2Vec(inputCol="text",outputCol="result",vectorSize=3,minCount=0)相Il练Word2Vec模型»>model=word2Vec.fit(df)#应用Word2Vec模型迸行数据转换»>result=model.transform(df)»>result.select("text',result").show(truncate=False)»>result.select("text","result*).shw(truncateFalse)ItextIresult-I(I,heard,about,SparkfandtI,love,SparkI(-0.0632904237136244810.021146534476429224r-0.01727932202629745II.wish.Java9could,use.case,classes(-0.008821263876078385.-0.011005219338195664.-0,008713434317282267I(Logistic,regression,models,are,neat0.0799966722726822,*0.010457423329353333l0.01600616276264191)图5-6WOrd2Vec算法的输出结果二、特征转换【教师】介绍常用的特征转换算法特征转换是指1各原始数据中特征值的表示形式转换为新的特征表示形式,以便更好地进行城分析和模型训练。特征转换可以通过对原始特征进行加工、组合、降维等方式来实现。PySPark.ml包提供了大量特征转换算法,常用的特征转换算法如下。(1)Tokenizer.Tokenizer用于分割给定的文本数据,将文本中的句子转换为4的、独立的单词序列。TokeniZerO方法的基本格式如下。Tokenizer(inputCol,outputCol)其中,参数inputCol表示输入列的名称;参数OUlPUtCol表示输出列的名称。(2)BinarizereBinarizer可以将某个特征的取值二值化,即将小于某个阈值的值设置为0,大于等于该阈值的值设置为LBinariZer()方法的基本格式如下。BinarizeKinpuiCoI,outputCol,threshold)其中,参数inputCol表示输入列的名称;参数outputCol表示输出列的名称;参数threshold(可选)表示阈值,默认值为0.0(3)StringIndexereSuingIndexer可以将原始的字符串类型的特征映射到一个整数序列上,其中不同的字符串会被映射到唯一的整数值上。SIringIndeXer。方法的基本格式如下。StringIndexer(inpulCol,outputCol.handleinvalid.StringOrderType)其中,参数inputCol表示输入列的名称;参数outputCol表示输出列的名称;参数HandleInvalid表示如何处理无效的输入数据,可选值包括error(抛出异常)、skip(期诅该特征值)和keep(将其视为一个新的特征值),默认值为error;参数s(ringOrderType表示字符串的索引顺序类型,可选值包括frequencyDesc(按照出现频率降序排序)、FrequencyAsc(按照出现频率升序排序),alphabetDesc(按照字母表顺序降序排序)等,默认值为frequencyDesc.(4)NonnalizereNormaIiZer可以对每个样本进行"规范化"操作。NonnaIiZero方法的基本格式如下。Normalizer(inputCol,outputCol,p)其中,参数inputCol表示输入列的名称;参数outputCol表示输出列的名称;参数P表示要使用的范数类型,常见的取值有LO(U范数)、2.0(L2范数)和np.inf(无穷范数),默认值为2.0.(5)MinMaxScalereMinMaxScaler可以将每个特征缩放到给定的范围,使所有特征都具有相同的重要性。MinMaXSCaIero方法的基本格式如下。MinMaxScaler(inputCol,outputCol,min,max)其中,参数i11putCol表示输入列的名称;参数OUlPUtCoI表示输出列的名称;参数min(可选)表示特征缩放后的最小值,默认值为0.0;参数max(可选)表示特征缩放后的最大值,默认值为l.0(6)主成分分析(PCA).PCA可以将高维的数据转换为低维的数据,同时尽量保留原始数据中的关键信息.PCAo方法的基本格式如下.PCA(k,inputCol,outputCol)(7)VectorAssemblereVectorAssembler可以将多列娄照合并为单个向量列。VeClorASsemblero方法的基本格式如下.VectorAssembler(inputCols,outputCol,Iiandlehivalid)其中,参数inputCols表示输入列的名称;参数outputCol表示输出列的名称;handieinvalid表示如何处理无效的输入数据,可选值包括error,skip和keep,默认值为error(8)SiandardScaIereStandardScaler用于对数据集中的特征j进行标准化处理。SlandardSCaler()方法的基本格式如下。StandardScaler(withMean,withStd,inputCol,outputCol)其中,参数WithMean表示是否将叫进行均值归一化处理,默认值为True;参数WiIhStd表示是否将数据进行标准差归一化处理,默认值为True;参数inputCol表示输入列的名称;参数outputCol表示输出列的名称.【教师】通过例子,帮助学生掌握特征转换算法的应用【例5-3使用Binarizer算法将年龄进行二值化处理,将阈值设置为30,特征值超过30的映射为1.0,特征值小于30的映射为0.0,输出结果如图5-7所示.hadoop()bogon$pyspark»>frompyspark.ml.featureimportBinarizer»>frompyspark.sql.functionsimportcol#创建DataFrame»>data=SPark.CreaieDaiaFrameU('Bob',21),(,Mary,18),('William,35),"name,',"age',)(详见教材)>»binarized.data.select("name"."age*,"bin.age").show()÷-.-.÷Inameagebin_age÷÷-+IBob21.00.0Haryj18.010.0IWilliaml35.011.0-+图5-7Binarizer算法的输出结果【例5-4使用Stringlndexer算法将相同类别的水果映射为相同的数值,输出结果如图5-8所示。(hadoopbogon$pyspark»>frompyspark.ml.featureimportStringIndexer#定义数据»>data=(*,ale".O),("orange",1),("banana",2),("apple",3),("banana",4),("orange",5),("peach",6)(详见教材)»>indexed,show()+IfruitIidIlabelIIappleIIorangeIbananaIIappleIbananaIIorangeIpeachI00.012.021.030.041.052.0613.0图5-8StringIndexer算法的输出结果【例5-5分别使用Normalizer4MinMaxScalcr和StandardScaler算法对领三三彳¾tS1,输出结果如图5-9所示。»>non.data.show()+IidIfeaturesnormalized.features+I011.0.2.0,3.0I0.26726124191242.|I1|4.0,5.0,6.0I(0.45584230583855.|I2|7,0,8.0,90I0.50257071103241.|+»>minmax.data.show()+IidIfeaturesminmax,scaled.featuresI01.0,2.0,3.0(3,)lIl4.0,5.0,6.00.5,0.5,0.5I27.0,8.0,901,0,1.0,1.0+»>stand.data.show()+IidIfeatures)standsrd.scaled.features)+I01,0,2.0,300,33333333333333.I14.0,5.0,601.33333333333333.I27.0,8.0,9.02.33333333333333.+图5-9NormalizesMinMaXSCaIer和StandardSCaIel算法的输出结果hadoopbogon$pyspark»>frompyspark.ml.featureimportNormalizer.StandardScaler,MinMaxScaler»>frompyspark.ml.IinalgimportVectors(详见教材)三、特征选择【教师】介绍常用的特征选择算法特征选择是指从数据集中选择最优的特征子集,从而改进机器学习模型的性能并减少模型复杂度。pyspark.ml包提供了大量的特征选择算法,常用的特征选择算法如下。(I)ChiSqSelectoreChiSqSelector可以选择与标签最相关的前numTopFeatures个特征.ChiSqSeIeCtOrO方法的基本格式如下。ChiSqSelector(nunTopFeatures,featuresCol,outputCol,IableCol)其中,参数numTopFeatures(可选)表示要选择的顶部特征数量,默认值为50;参数featuresCol表示输入特征列的名称;参数OUtPUtCoI表示输出列的名称;参数IableCol表示输入标签列的名称。(2)VectorSlicereVectorSlicer可以提取特征向量中的特定特征列.VeClorSIiCer()方法的基本格式如下。VectorSlicer(inputCol,outputCol,indices,names)其中,参数inputCo)表示输入列的名称;参数OUtPUtCOl表示输出列的名称;参数indices(可选)表示要选择的特征在输入的特征向量中的索引;参数names(可选)表示要选择的特征的名称。【教师】通过例子,帮助学生掌握特征选择算法的应用【例56】读取SPark安装目录下自带的示例文件“usrIOCalsparkdatamllibSamPIe_libsvm_data.txt”,输出原始特征如图5-10所示。然后,使用ChiSqSelector实现特征选择,输出结果如图5-11所示。hadoop(>bogon-$pyspark»>frompyspark.inl.featureimportVectorAssembler,ChiSqSelector»>frompyspark.sql.functionsimportcol舱0建DataFrame»>data=SPark.read.formai("libsvm").load("file:/usrlocalSParkdaamllibSamPleibsvm_daia.lxT')»>data.show().(详见教材)»>data,show()»>result.select("label",SelectedFeatures").show(truncate=False)IlabelIfeatures)÷+I0.0(692,127.128,129.I1.0(692,158,159,160.I1.0(692,124,125,126.I1.0(692,152,153,154.I1.0(692,151,152,153.I0.0(692,129,130,131.I1.0(692,158,159,160.II1.0(692,99,100,101,.I0.0(692,154,155,156.I0.0(692,(127,128,129.II1.0(692,154,155,156.II0.0(692,153,154,155.!0.0(692,151,152,153.I1.0(692,129,130,131.I0.0(692,154,155,156.I1.0(692,150,151,152.I0.0(692,124,125,126.I0.0(692,152,153,154.I1.0(692,97,98,99,12.I1.0(692,124,125,126.+÷÷onlyshowingtop20rows图5-10原始特征【学生】聆听、思考、理解、记录labelISelectedFeatures0-01(2.),)10|(2,0,1,251.0,253,0)1.0(2,O,l1252.O,252.O)1-0|(2,0,1,254.0,254.0)10|(2,0,1,254.0,254.0)O.O|(2,)1-0|(2,0,1,253.0,254.0)10(2,0,19.0)0.0(2,0,20.0)O.O|(2,(,)10(2,(0,l,253.0,253.0)00|(2,)0.0|(2,)10|(2,0.1,254.0,253.0)O.O(2,0,72.0)10(2,0,l,255.0,254,0)00|(2,)0.0|(2,)101(2,0,1,253.0,253.0)10|(2,0,1,254.0,254.0)+-+>nlyshowingtop20rows图5-U进行特征选择后的结果课堂实践【教师】介绍“提取鱼尾花的特征”的大概流程,安排学生扫描微课二维码观看视频“提取莺尾花的特征“(详见教材),并要求学生进行相应操作打开PyCharm,在"IrisFeaiurepy"文件中继续编写应用程序,实现莺尾花数据的特征处理。具体实现步骤如下。步骤IA创建VectorAssenibler对象assembler,将所有特征列转换为单个特征列features。步骤2A对iris应用VeCtorASSemblCr模型assembler,得到数据转换结果data_with_features.首先使用IranSfOIm()方法将iris中的所有特征列转换为单个特征列然后使用SeleCt()方法选取features列和IabeI列,仅保留转换后的特征列和原始标签列。步骤3A使用ShOWo方法显示特征合并后的结果。(详见教材)【参考代码】# 将所有特征列转换为单个特征列# 创建VectorAssembIer对象assembler=VectorAssembler(inputCols="sepaljength"."sepal-width","petaljength'"petal_width".outputCol="features")# 应用VeCtorASSembler模型进行数据转换,并选取指定列data_with_features=assembler,transfbrm(iris).select(col("features"),col("label*)# 显示特征合并后的结果data_with_features.show()#对特征列进行降维#创建PCA对象PCa=PCA(k=2,inputCol="features",outputCol="pcaFeatures")制I练PCA模型model=pca.fit(daia_with_features)#应用PCA模型转换数据,并选取指定列iris_pca=model.transfbnn(data_with_features).selec(col("caFeaiures"),col("label")#显示使用PCA降维后的数据iris_pca.show(runcaie=False)#将字符串标签列转换为数值标签列殖)建StringIndexer对象IabeIJndexer=StringIndexer(inputCol="label",outputCol="label_index")判1|练并应用StringlndeXer模型indexed=label_indexer.flt(iris_pca).transfbnn(iris_pca)#显示将字符串标签列转换为数值标签列后的数据indexed.show()【运行结果】在PyCharm中运行代码,控制台输出的结果依次为特征合并后的数据、降维后的数据和将字符串标签列转换为数值标签列后的数据,如图5-12所示.,4.一一IpcaFwturesIIBgIIIfeaturesI,pcaFtvrsXebXlXaM.lndlA”.,.IIt-2.827135V726790286,-5.64153X45573357IJrls-stsaI(5.Ir3.5,0.211Iris-setoseI,I(-2.827135972679e.IIris-MtOMI6.01r.-,.o4.II(-2.795952482X48W6,-5.145166883252942IXrls*stOSl.4.9r3>6.1.21llrls-stoselt(-2.Irls-stMe.llfz,n,ll.I-2.621523558165B6r-5.37737812120394)IZ11s*stosaltl(4.7r3.21.3re.2jlXrXs-stosal,(-2.62123SM16Se.IXrls-stM.l.6,j.1.1.5,.2llris-toiC械534742%T”WwmM-WvI.elH1-2.7827501151662,-5.8577HrlS-S.toM|ll.2.78275u5,5w.111,.mmm1.lH5.4,3.9,1.7.e.4IIrl-t0.lt-3.23K457367733795.I!rU-S.tolll.j.2jt457j677s5.lJpl,.Mt0M),ll(4.6,3.1.4,.5llris-seto,81(-2.524157.-5.2326X92X9784287l.2.6wt524152j.|:rl,.Mt0M).1(5.6.3.4,1.5,0.2)1188111-2.884841164459158,-5.45129879769255jIXrU-s.tOSal1.2.m4ww4591.r1,.mmm,elI4.4,2.9,1.4.e.3llru-S.t«e|(-2-6253845327542.-4.743Q2574477577IlML(.2.623U4,32447.Irl,.Mtot.|e.ll(4.»,3.1.1.S.e.lIIrl.-S«to»e|I(-2.837498411963854,-5.2680520270562295)llrls-setoallr-,ellS.A,3,7,1.5,.2)IIrlS*SetOSalIl-3.4816384447S8,-5.966458744481MIIrl*-StOSI(.jee4(163M4A«e.rls-s«t0MI.l4.8r3.4a.6r.2Irls-stOS01(-2.8982603795119207,-5.336244362769227jI.3(8937663795119.IXris-stOMI.0lI4.8.3.,1.4,B.IjlXrii-Setosal(-2.72S9e12J785879,-5.M6W3M1957862IIris-stosal.27239912178S.IIrB-stOMI.lI(4.3r3e4l.lfe.lIIriS-SetosaII-2.28614265157?96,-4.811443821323543IXrls*stosal(2.28142651879.IIflt0Me.I(S.8r4.l.2v.2IlrlS-SemeIK-2.867799MeW18512,-6.5ea9185e222419Irls-stOSl.2.8677998M8418.IZrXs-stMIe.I5.7v4.4.1.5r0.4Xrls-stosaI-3.127473773?836023,-6.659478675883IZrls*stosal(-3.127473773983.IIris-MtOMl88lI(9.4r3.1.3v.4)IIrlS-SetosaI1(-2.8S88168946571686,-6.1328134545563)IIrls*stosal(2.88SS168946571.IIrH-ttOMIS.1,3.5.1.4.3Ilris-MtoselI-2.845825453385*.-5.433639S559853)IIris-stosI11.2.863026JM3M.IIrlsstOMIe.(5.7r3.8.1.7v.3Xrls-stosalI-3.312265136352215,-6.1939678180705IZ11s*

    注意事项

    本文(《Spark大数据技术与应用案例教程》教案第16课提取鸢尾花的特征.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开