使用Python将日志文件转换为csv文件
我在工作中遇到以下问题-我需要获取一个日志文件,其中的项目安排如下:使用Python将日志文件转换为csv文件,python,csv,Python,Csv,我在工作中遇到以下问题-我需要获取一个日志文件,其中的项目安排如下: A1 B1 C1 A2 B2 C2 . . . An Bn Cn 我需要一个完整的csv文件,如下所示: A1,B1,C1 A2,B2,C2 A3,B3,C3 ... An,Bn,Cn 如何使用python脚本实现这一点 编辑:实际上,格式是按以下方式写出的- Voltage: A1 Current: B1 Power: C1 如何将其转换为- Voltage, Current, Power A1,B1,C1 使用nu
A1
B1
C1
A2
B2
C2
.
.
.
An
Bn
Cn
我需要一个完整的csv文件,如下所示:
A1,B1,C1
A2,B2,C2
A3,B3,C3
...
An,Bn,Cn
如何使用python脚本实现这一点
编辑:实际上,格式是按以下方式写出的-
Voltage: A1
Current: B1
Power: C1
如何将其转换为-
Voltage, Current, Power
A1,B1,C1
使用numpy的简单解决方案:
import numpy as np
data = np.genfromtxt("d.csv", dtype=str)
data = np.reshape(data, (3,-1))
np.savetxt('data.csv', data, delimiter=',', fmt="%s")
结果:
A1,B1,C1
A2,B2,C2
An,Bn,Cn
如果您没有使用numpy,请发布一些您尝试过的代码
import csv
with open('myfile.log') as file:
lines = file.read().splitlines()
lines = [lines[x:x+3] for x in range(0, len(lines), 3)]
with open('yourcsv.csv', 'w+') as csvfile:
w = csv.writer(csvfile)
w.writerows(lines)
请注意,点仍然存在,它们将被视为值(因此它们也将被逗号分隔)您尝试了什么?发布您编写的任何代码。大概是你的公司在付钱给你,所以你应该展示你为解决这个问题所做的努力。如果格式与您编写的完全相同,则只需从文件的最后一行找到
n
的值,然后创建csv文件:无需查看日志文件的其余部分。还是有什么你没有包括在内的?