使用pyspark rdd如何提取头记录以给定的格式

t5zmwmid  于 2021-05-17  发布在  Spark
关注(0)|答案(0)|浏览(262)

我已尝试使用以下pyspark代码从固定长度文件中读取头和尾记录:

path = "/axx/yy/test"
rdd = spark.read.text(path).withColumn("file_name",F.substring_index(input_file_name(),"/",-1)).filter(F.col("value").startswith("XXX") | (F.col("value") startwith("YYY")).select(concat(F.col("value"),F.lit("|"),F.col("file_name"))).rdd.map(list)

我得到的结果是:

[[XXX000,Filename1],[XXX000,Filename2],[YYY000,Filename1],[YYY000,Filename2]]

我想要的输出:

[[XXX000,YYY000,Filename1],[XXX000,YYY000,Filename2]]

有人能帮我得到上面格式的输出吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题