我们正试图从旅行请求中提取旅行路线,这些旅行路线由标准化的审计人员填写。

示例:
EY 275 13FEB HYDAUH 0425 0715 这里的数据如下所示
EY> Travel Type
275> Flight Number
13FEB> Date of travel
HYDAUH>Airports involved during the Departure and arrival.
0425 0715 > Boarding and landing times of the flight.在这里,我们需要从原始文本字段中提取各个数据元素,然后将它们映射到各自的出行字段并计算几个值。
在R/Python中有没有过程可以用最小的努力来实现它们。
我正在寻找用于数据拆分/映射的存续函数/过程。
发布于 2015-09-22 20:15:20
如果您可以提取单个记录,如第二个示例中所示,并且字段之间始终至少有一个空格,那么在Python中提取单个数据片段是很简单的:
>>> itin = 'EY 275 13FEB HYDAUH 0425 0715'
>>> ifields = itin.split()
>>> ifields[0] # travel type
'EY'
>>> ifields[1] # flight number
'275'
>>> ifields[2] # date of travel
'13FEB'
>>> ifields[3][0:3] # departure airport
'HYD'
>>> ifields[3][3:6] # destination airport
'AUH'
>>> ifields[4] # boarding time
'0425'
>>> ifields[5] # landing time
'0715'您的第一个示例显示了紧跟在第一个记录后面的第二个记录,没有空格-是这样吗?如果是,每条记录的长度是否总是相同的字符数?
>>> itinline = 'QR 529 09AUG MAADOH 0405 0600QR 67 09AUG DOHFRA 0815'
>>> itinline[0:32]
'QR 529 09AUG MAADOH 0405 0600'
>>> itinline[32:64]
'QR 67 09AUG DOHFRA 0815'如果您的数据在一行上有多个长度可变的记录,或者如果每个字段之间可能有空格,也可能没有空格,那么解析就会变得更加复杂,但在Python中仍然可以相当容易地完成。在这种情况下,请发布一个包含几条记录的更完整的示例,并显示您想要获得的输出。
https://stackoverflow.com/questions/32714642
复制相似问题