如何将日志文件中的特定列提取到 csv 文件
How to extract specific columns in log file to csv file
I0625 17:25:22.544378 3366 solver.cpp:229] Iteration 7120, loss = 8.79839
预期输出:
Iteration 7120 loss = 8.79839
您可能需要使用正则表达式来查找包含所需值的行并提取它们。然后可以使用 Python 的 CSV 库将这些行写入 CSV 格式,如下所示:
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())
以CSV格式给你output.csv
如下:
Iteration,loss
7120,1.79839
7120,1.79839
7120,1.79839
7120,1.79839
I0625 17:25:22.544378 3366 solver.cpp:229] Iteration 7120, loss = 8.79839
预期输出:
Iteration 7120 loss = 8.79839
您可能需要使用正则表达式来查找包含所需值的行并提取它们。然后可以使用 Python 的 CSV 库将这些行写入 CSV 格式,如下所示:
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())
以CSV格式给你output.csv
如下:
Iteration,loss
7120,1.79839
7120,1.79839
7120,1.79839
7120,1.79839