Ich habe eine Textdatei im folgenden Format.Entsperren einer Tabelle in Spalten in einer Textdatei mit Python
0TYPE DURATION (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
---- --------
A 001-010 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
011-020 0.00 0.76 0.78 0.80 0.82 0.84 0.87 0.89 0.92 0.94
021-030 0.97 0.99 1.02
0TYPE DURATION (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
---- --------
B 001-010 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
011-020 0.00 3.65 3.66
Ich möchte es in folgendem Format UNPIVOT
TYPE DURATION RATE
A 1 0.00
A 2 0.00
A 3 0.00
...
A 23 1.02
B 1 0.00
B 2 0.00
B 3 0.00
...
B 13 3.66
Für jeden Typ Entpivotisierung die Dauer und Geschwindigkeit. Ich habe versucht, die Rate in eine Liste zu lesen und zu teilen und sie mit einer Schleife zu drucken. Aber der Index wird mit jeder Zeile zurückgesetzt.
Wie behalte ich den Index, ohne die Anzahl der Raten für jeden Typ zu kennen? Jede Hilfe wird geschätzt!
#look for pattern 001-010
pattern = r'\d{3}-\d{3}'
if re.findall(pattern, line):
print_list = filter(None, re.split(r'\s*', line.replace("\x00",""))) #delimiters - unicode null, space and new line
print_str = record_type + '|' + plan_code+ '|' + issue_age+ '|' + type
for index, value in enumerate(print_list[2:]):
print print_str + '|' + str(index+1) + '|' + value + '\n'
Side Lesung am Menschen die Anwendungsfälle von regex debattieren: https://stackoverflow.com/questions/764247/why-are-regular-expressions-so -kontroverse – Aaron
Danke Aaron. Ich bin nicht vertraut mit der Verwendung von Iterator. Das ist sehr hilfreich! – qshngv