1、编程环境
python3
- 编辑器:PyCharm
- 环境:anaconda3
使用的工具包
#用于调用excel文件的
import openpyxl
#用于正则比较的包
import re
2、主函数
if \__name__ == "\__main__":
# targetSheet为需要输出统计结果的工作表,dataSheet为数据所在的工作表
# 提取excel文件
wb_targetSheet = openpyxl.load_workbook('D:/target.xlsx')
wb_dataSheet = openpyxl.load_workbook('D:/data.xlsx')
# 提取工作表
ws_targetSheet = getWorksheets(wb_targetSheet, "Sheetname")
ws_dataSheet = getWorksheets(wb_dataSheet, "Sheetname")
# column_origin_targetSheet 统计表 原始结果所在列
# column_output_targetSheet 统计表 误识别统计结果输出列
target_column = targetColumn(n, n)#column_origin_targetSheet,column_output_targetSheet
# column_origin_dataSheet 数据表 原始结果所在列
# column_tag_dataSheet 数据表 标注结果所在列
data_column = dataColumn(n, n) # column_origin_dataSheet,column_tag_dataSheet
# 统计表的各类数字统计所在列
# all = column_number[0] 统计表 提取总次数
# true = column_number[1] 统计表 识别正确数
# true_per = column_number[2] 统计表 识别正确占比
# false = column_number[3] 统计表 识别错误数
# false_per = column_number[4] 统计表 识别错误占比
# none = column_number[5] 统计表 无效次数
# none_per = column_number[6] 统计表 无效数据占比
column_number = param_number_return(n, n, n, n, n, n, n)
# 统计识别结果的主函数,并返回错误的数组
# targetSheet_row 统计表 原始识别结果总行数
# dataSheet_row 数据表 标注结果总行数
# 本函数导入参数分别为:ws_targetSheet, ws_dataSheet, targetSheet_row, dataSheet_row, target_column, data_column
err_str = Statistics(ws_targetSheet, ws_dataSheet, n, n, target_column, data_column, column_number)
# 在统计表第err_statistics行,输出 统计表原始结果无法识别的行
err_statistics = n
ws_targetSheet.cell(err_statistics, column=1).value = "原始结果无法识别行:"
ws_targetSheet.cell(err_statistics, column=2).value = err_str
# 保存统计工作表,在此命令执行之前生成和修改的数据不会保存
wb_targetSheet.save('D:/target.xlsx')
3、整表处理函数
#输出全部误识别结果统计到指定xlsx的指定Sheet
#targetSheet_row:输出表的行数
#dataSheet_row:数