当数据顺序不正确时,如何处理pyspark中的异常?

时间:2019-04-25 07:41:30

标签: python apache-spark dataframe pyspark data-science

我正在从一些无序数据中创建一个小的RDD。每行中没有相同的列数。因此,我将其作为具有最大行索引的元组类型。

在访问tuple [4],tuple [9]时遇到问题,因为某些行没有9个索引,在这种情况下,我想抛出一个异常并保持不变吗?我们如何在pyspark中实现这一目标?

data=sc.textFile("D:\\USA.csv")

try:
  order=data.map(lambda l:l.split(",")).map(lambda l: (l[0],l[1],l[2],l[3],l[4],l[5],l[6],l[7],l[8]))

  order.map(lambda l:(l[0],l[1])).foreach(print)

 except Exception as e:
   print(e)

错误:

  

返回f(* args,** kwargs)
  
中的文件“ E:\ pyspark_eclipse \ PySpark \ org \ pyspark \ PySparkRDD.py”,第11行     order = data.map(lambda l:l.split(“,”))。map(lambda l:(l [0],l [1],l [2],l [3],l [4], l [5],l [6],l [7],l [8]))   IndexError:列表索引超出范围

0 个答案:

没有答案