使用Pyspark RDD如何提取头记录。。以给定格式

2024-09-30 22:14:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我已尝试使用以下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]]

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


Tags: 文件path代码namevalue记录colpyspark