map 和 flatmap 的区别

map和flatmap的区别

我看到网上的这些抄例子,真是醉了,所有人用的都是一个例子,这个例子还很不好理解,于是写了这个,就不搞理绕口的理论介绍了,直接看例子吧

map

 rdd1 = sc.parallelize(["a b c","d e f","h i j"])
 rdd2 = rdd1.map(lambda x:x.split(" "))
 rdd2.collect()
 >>> [['a', 'b', 'c'], ['d', 'e', 'f'], ['h', 'i', 'j']]

flatmap

rdd1 = sc.parallelize(["a b c","d e f","h i j"])
rdd2 = rdd1.flatMap(lambda x:x.split(" "))
rdd2.collect()
>>> ['a', 'b', 'c', 'd', 'e', 'f', 'h', 'i', 'j']

也就是说map不会讲原先的列表中的元素全部扁平化,而flatmap则会将数据扁平化

over

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值