我有一个非结构化的CSV文件,行不等。我想以这样的方式构造文件,即通过行中的某些单词组合行。 例如:if" A"这符合线,这标志着线的重要性,如果" B"在线,这标志着线的终点。 我已经在pyspark中寻找两天的方式来做到这一点,但我没有解决方案。 任何帮助都会很棒。
csv文件的内容如下所示:
STARTING |1|TH|TGG|132|8|T|Fall|
EVENT 1|56|HT|JUP||||||||
EVENT 2|BHT|987|231|||||||||||||||||
STOP|HFR|0.5|90|
STARTING |8|TH|TGG|12|8|T|Fall|
EVENT 1|6|HT|UP||||||||
EVENT 2|BT|987|31|||||||||||||||||
STOP|FR|0.5|90|
我想要这个: enter image description here 我在PYSPARK中创建了以下功能,但它不能完成这项工作:)
rdd_1 = ("filename/Path")
Def tranform(line)
lines = line .replace ("\n").replace("\r")
START = False
END = False
New_line =[]
AGG = []
for line in lines:
if "STARTING" in line:
START = True
if "STOP" in line:
END = True
if START and END:
New_line.append(line)
AGG = ' ' join (New_line)
Return (AGG)
rdd_2 = rdd_1.map(transform)