python-如何在pyspark的RDD*问元组中的单个元素?

可以说我有一个RDD

[(u’Some1′,(u’ABC’,9989)),
 (u’Some2′,(u’XYZ’,235)),
 (u’Some3′,(u’BBB’,5379)),
 (u’Some4′,(u’ABC’,5379))]

我正在使用map一次获取一个元组,但是如何访问元组的各个元素,例如查看元组是否包含某些字符.实际上,我想过滤掉那些包含某些字符的字符.这里包含ABC的元组

我试图做这样的事情,但没有帮助

def foo(line):
     if(line[1]=="ABC"):
          return (line)


new_data = data.map(foo)

我也是火花和Python的新手,请帮忙!!

解决方法:

RDD可以直接过滤.下面将为您提供在元组第二个元素的第0个位置包含“ ABC”的所有记录.

new_data = data.filter(lambda x: x[1][0] == "ABC")
上一篇:python-找不到Pyspark模块


下一篇:python-指定实木复合地板属性pyspark