Как извлечь определенные столбцы из файла журнала в CSV-файл - PullRequest
0 голосов
/ 27 июня 2018
I0625 17:25:22.544378  3366 solver.cpp:229] Iteration 7120, loss = 8.79839

ожидаемый результат:

Iteration 7120 loss = 8.79839

1 Ответ

0 голосов
/ 27 июня 2018

Возможно, вам понадобится регулярное выражение, чтобы найти строки, содержащие нужные значения, и извлечь их. Затем эти строки можно записать в формате CSV с использованием библиотеки CSV Python следующим образом:

import re
import csv

with open('log.txt') as f_input, open('output.csv', 'w', newline='') as f_output:
    csv_output = csv.writer(f_output)
    csv_output.writerow(['Iteration', 'loss'])

    for line in f_input:
        re_values = re.search(r'Iteration (\d+), loss = ([0-9.]+)', line)

        if re_values:
            csv_output.writerow(re_values.groups())

Предоставление вам output.csv в формате CSV следующим образом:

Iteration,loss
7120,1.79839
7120,1.79839
7120,1.79839
7120,1.79839
...