From aa0bc5d40026bd5e627191466a3e3064f1082c0e Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期三, 19 三月 2025 17:17:00 +0800 Subject: [PATCH] 模型名称不能包含下划线 平均绝对误差 --- .gitignore | 1 + src/views/model/mpk/file/MpkForm.vue | 8 +++++++- src/views/model/pre/analysis/index.vue | 38 ++++++++++++++++++++++++++++++++++++-- 3 files changed, 44 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 848638a..c43bd2f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ node_modules .DS_Store dist +plat dist-ssr /dist* pnpm-debug diff --git a/src/views/model/mpk/file/MpkForm.vue b/src/views/model/mpk/file/MpkForm.vue index 8dfbae9..fd9fea1 100644 --- a/src/views/model/mpk/file/MpkForm.vue +++ b/src/views/model/mpk/file/MpkForm.vue @@ -316,7 +316,13 @@ const formRules = reactive<FormRules>({ pyName: [ - {required: true, message: '模型名称不能为空,请上传模型文件', trigger: 'blur'} + {required: true, message: '模型名称不能为空,请上传模型文件', trigger: 'blur'}, + { validator: (rule, value, callback) => { + if (value && value.includes('_')) { + callback(new Error('模型名称不能包含下划线')); + } else { + callback(); + }}, trigger: 'blur' } ], pyChineseName: [ {required: true, message: '模型中文名称不能为空', trigger: 'blur'} diff --git a/src/views/model/pre/analysis/index.vue b/src/views/model/pre/analysis/index.vue index 35a306b..aa75020 100644 --- a/src/views/model/pre/analysis/index.vue +++ b/src/views/model/pre/analysis/index.vue @@ -133,6 +133,11 @@ {{ calRateForm.preCumulant }} </el-form-item> </el-col> + <el-col :span="4"> + <el-form-item label="平均绝对误差:" label-width="110px"> + {{ calRateForm.deviation }} + </el-form-item> + </el-col> </el-row> <el-row> <el-col :span="4"> @@ -158,6 +163,11 @@ <el-col :span="4"> <el-form-item label="真实累积量:"> {{ calRateForm.realCumulant }} + </el-form-item> + </el-col> + <el-col :span="4"> + <el-form-item label="累积量平均绝对误差:" label-width="152px"> + {{ calRateForm.deviationCumulant }} </el-form-item> </el-col> </el-row> @@ -249,7 +259,9 @@ itemPreMax: 0, itemPreMin: 0, preCumulant: 0, - realCumulant: 0 + realCumulant: 0, + deviation: 0, //平均绝对误差 + deviationCumulant: 0, //累积量平均绝对误差 }) let itemData = ref({ currentTreeList: [], @@ -720,6 +732,8 @@ calRateForm.value.itemMin = dataView.hisMin; calRateForm.value.itemAvg = dataView.hisAvg; calRateForm.value.realCumulant = dataView.hisCumulant; + calDeviation(dataView.realData,dataView.preDataL,'deviation') + calDeviation(dataView.cumulantRealData,dataView.cumulantPreData,'deviationCumulant') } calAccuracyRate() } @@ -774,6 +788,24 @@ calRateForm.value.IN_ACCURACY_RATE = Number(rateIn); calRateForm.value.OUT_ACCURACY_RATE = Number(rateOut); loading2.value = false; +} + +function calDeviation(realData,preDataL,key) { + if (realData == null || preDataL == null || realData.length === 0 || preDataL.length === 0) { + return; + } + const realObj = {} + realData.map(e => realObj[e[0]] = e[1]) + + let sum = 0; + let index = 0; + preDataL.forEach(e => { + if (realObj[e[0]] != undefined) { + sum += Math.abs(e[1] - realObj[e[0]]) + index++ + } + }) + calRateForm.value[key] = Number((sum / index).toFixed(2)) } function rightSearchDataByRange() { @@ -838,7 +870,9 @@ itemPreMax: 0, itemPreMin: 0, preCumulant: 0, - realCumulant: 0 + realCumulant: 0, + deviation: 0, //平均绝对误差 + deviationCumulant: 0, //累积量平均绝对误差 } calRateFormRef.value?.resetFields() } -- Gitblit v1.9.3