如何为rdd python pyspark

时间:2019-07-16 09:25:50

标签: python pyspark rdd

我必须为我拥有的一列数据使用for循环。不幸的是,它不起作用

import sys
from pyspark import SparkContext, SparkConf
import re
sys.path.insert(0, '.')

class Utils():

removing_Impurities_For_Data = re.compile(' ')

def splitComma(line: str):
splits = Utils.removing_Impurities_For_Data.split(line)
return "{}".format(c for c in splits[1])

if __name__ == "__main__":

  conf = SparkConf().setAppName("Help").setMaster("local[*]")
  sc = SparkContext(conf = conf)

  RDD = sc.textFile("Data.txt")

  RDD = RDD.map(splitComma)
  RDD.coalesce(1).saveAsTextFile('Wanted_Column')

Data.txt =

 ABC www.abc.com one

 CDA www.cda.com two

 CCC www.ccc.com three

实际上,如果不使用此方法,我可以得到第一列。但是,我需要将第一个列的项目与另一个函数进行比较。

正如我用于splits [1]中的循环一样,预期结果必须是:

www.abc.com

www.cda.com

www.ccc.com

数据如下:

    <generator object splitComma.<locals>.<genexpr> at 0x000001E831C7CD68>

0 个答案:

没有答案