0
点赞
收藏
分享

微信扫一扫

python科研向数据处理篇——批量向Excel写入数据

倪雅各 2022-02-12 阅读 184

python科研向数据处理篇——批量向Excel写入数据

项目背景

实验数据为电流值,由AD采集模块通过串口发送至上位机保存为txt文本,有多组实验,每组实验保存在一个文本文件中,现需要将所有数据综合至一个Excel表格中做后续分析,单独操作每个文件费时费力,只能再次祭出python大法开挂,哈哈!python牛逼!

基础

经过简单查找资料,python操作excel的库有很多,但本项目只需要写入功能,有两个库简单易用——xlwtXlsxWriter,操作方法类似,这里选择XlsxWriter,支持写入 .xlsx 格式文件。

安装

pip install XlsxWriter

基础操作代码概览

import xlsxwriter

workbook = xlsxwriter.Workbook('hello.xlsx') # 建立一个excel文件
worksheet = workbook.add_worksheet() # 向文件中添加一个sheet表格

worksheet.write('A1', 'Hello world') # 向表格中写入内容
workbook.close() # 关闭表格并保存

加亿点点细节

import xlsxwriter
from os import listdir, getcwd

path = getcwd().split('\\')[-1]
print("当前文件夹: " + path)

# 建立一个excel文件和工作表
workbook = xlsxwriter.Workbook(f'{path}有效电流数据汇总.xlsx')
current = workbook.add_worksheet('电流数据')

# 预设写入格式
num = workbook.add_format({'num_format': ''})
bold = workbook.add_format({'bold': True})


col = 0

for i in listdir():

	# 获取有效数据文件列表
	if  '(processed).txt'  in i:
		print("开始处理: " + i)

		# 读取txt数据并转换成列表储存
		with open(i, 'r') as t:
			data = t.read().strip().split()
			print("数据长度: ", len(data))

		row = 0

		current.write(row, col, i[:-15], bold) # 写表头
		# 写入全部数据
		for d in data:
			row += 1
			current.write(row, col, d, num)
			
		# break
		col += 1

workbook.close() # 关闭表格并保存

执行结果如下:
数据写入excel结果图

完成!后续就可以方便的进行数据处理了,Nice!

参考资料

XlsxWriter官方文档:使用 Python 和 XlsxWriter 创建 Excel 文件 — XlsxWriter 文档
其他大神的翻译文档:Python中的模块–XlsxWriter - 简书 (jianshu.com)

举报

相关推荐

0 条评论