你好,我正在处理一个稍微有些棘手的文件格式,需要清理以进行未来的处理。我一直在使用Pyspark将数据处理成数据框。
这个文件看起来像这样:
AA 1234 ZXYW
BB A 890
CC B 321
AA 1234 LMNO
BB D 123
CC E 321
AA 1234 ZXYW
CC E 456
每个“AA”记录定义了一组逻辑记录的开头,每行数据都是固定长度的,并且其中编码了我想要提取的信息。至少有20-30种不同的记录类型。它们总是以每行开头的两个字母代码来标识。每个组中可以有1个或多个不同的记录类型(即并非每个组都包含所有记录类型)。
作为第一阶段,我已经成功将记录以以下格式分组:
+----------------+---------------------------------+
| index| result|
+----------------+---------------------------------+
| 1|[AA 1234 ZXYV,BB A 890,CC B 321]|
| 2|[AA 1234 LMNO,BB D 123,CC E 321]|
| 3|[AA 1234 ZXYV,CC B 321] |
+----------------+---------------------------------+
作为第二阶段,我真的希望将数据导入到dataframe中以下列中:
+----------------+---------------------------------+-------------+--------+--------+
| index| result| AA| BB| CC|
+----------------+---------------------------------+-------------+--------+--------+
| 1|[AA 1234 ZXYV,BB A 890,CC B 321]|AA 1234 ZXYV|BB A 890|CC B 321|
| 2|[AA 1234 LMNO,BB D 123,CC E 321]|AA 1234 LMNO|BB D 123|CC E 321|
| 3|[AA 1234 ZXYV,CC B 321] |AA 1234 ZXYV| Null|CC B 321|
+----------------+---------------------------------+-------------+--------+--------+
因为在那个时候提取我所需的信息应该是微不足道的。你们有什么建议,我该怎么做呢?非常感谢。