Spark Python API函数学习.docx

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Spark Python API函数学习

Spark Python API函数学习pyspark version1print(pyspark version:?+?str(sc.version))23?4pyspark version:1.2.2map01# map02# sc = spark context, parallelize creates an RDD from the passed object03x?=?sc.parallelize([1,2,3])04y?=?x.map(lambda?x: (x,x**2))05?06# collect copies RDD elements to a list on the driver07print(x.collect())08print(y.collect())09?10[1,?2,?3]11[(1,?1), (2,?4), (3,?9)]flatMap1# flatMap2x?=?sc.parallelize([1,2,3])3y?=?x.flatMap(lambda?x: (x,?100*x, x**2))4print(x.collect())5print(y.collect())6?7[1,?2,?3]8[1,?100,?1,?2,?200,?4,?3,?300,?9]mapPartitions01# mapPartitions02x?=?sc.parallelize([1,2,3],?2)03def?f(iterator):?yield?sum(iterator)04y?=?x.mapPartitions(f)05# glom() flattens elements on the same partition06print(x.glom().collect())?07print(y.glom().collect())08?09[[1], [2,?3]]10[[1], [5]]mapPartitionsWithIndex01# mapPartitionsWithIndex02x?=?sc.parallelize([1,2,3],?2)03def?f(partitionIndex, iterator):?yield?(partitionIndex,sum(iterator))04y?=?x.mapPartitionsWithIndex(f)05?06# glom() flattens elements on the same partition07print(x.glom().collect())?08print(y.glom().collect())09?10[[1], [2,?3]]11[[(0,?1)], [(1,?5)]]getNumPartitions1# getNumPartitions2x?=?sc.parallelize([1,2,3],?2)3y?=?x.getNumPartitions()4print(x.glom().collect())5print(y)6?7[[1], [2,?3]]82filter1# filter2x?=?sc.parallelize([1,2,3])3y?=?x.filter(lambda?x: x%2?==?1)??# filters out even elements4print(x.collect())5print(y.collect())6?7[1,?2,?3]8[1,?3]distinct1# distinct2x?=?sc.parallelize([A,A,B])3y?=?x.distinct()4print(x.collect())5print(y.collect())6?7[A,?A,?B]8[A,?B]sample01# sample02x?=?sc.parallelize(range(7))03# call sample 5 times04ylist?=?[x.sample(withReplacement=False, fraction=0.5)?for?i?inrange(5)]05print(x = ?+?str(x.collect()))06for?cnt,y?in?zip(range(len(ylist)), ylist):07????print(sample:?+?str(cnt)?+? y = ?+??str(y.collect()))08?09x?=?[0,?1,?2,?3,?4,?5,?6]10sample:0?y?=?[0,?2,?5,?6]11sample:1?y?=?[2,?6]12sample:2?y?=?[0,?4,?5,?6]13sample:3?y?=?[0,?2,?6]14sample:4?y?=?[0,?3

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档