我正在使用 Python 代码创建 CSV 文件。 我能够创建和存储数据。但我无法在 csv 文件中添加标题,即列名称。 我已创建数据框。 创建和附加csv的代码如下:
main_app.py:
def handle_data(data):
msg5 = data.replace("\n"," ").replace("\r"," ").split(",")
print(msg5)
d = dict(s.split(':') for s in msg5)
data_frame = pd.DataFrame(list(d.items())).transpose()
data_frame.columns = data_frame.iloc[0]
data_frame = data_frame.reindex(data_frame.index.drop(0))
print(data_frame)
filename = (value_text + time2 + ".csv")
#print(filename)
fields = list(data_frame.columns)
with open(filename, 'a',newline='') as writeFile:
writeFile = csv.writer(writeFile)
writeFile.writerow(fields)
writeFile.writerows(data_frame.values)
def read_from_port(ser):
while True:
reading = ser.readline()
handle_data(reading.decode("utf-8"))```
read_from_port(serial_port)
此代码每次迭代都会添加列名称:
我得到的输出:
A B C
0 0 0
A B C
1 1 1
.......
我需要的输出是:
A B C
0 0 0
1 1 1
2 2 2
.....
有人可以帮帮我吗? 提前致谢。
最佳答案
csv.DictWriter 可以为你做到这一点!
csvfile = csv.DictWriter(writeFile, fieldnames=fields)
csvfile.writeheader()
csvfile.writerows(data_frame.values)
关于python - 在 Python 中创建并附加带有标题的 CSV 文件一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59104055/