diff --git a/softwareDirectory/AutoVerScheme/verifywindow.cpp b/softwareDirectory/AutoVerScheme/verifywindow.cpp index 3697494..c3abf8b 100644 --- a/softwareDirectory/AutoVerScheme/verifywindow.cpp +++ b/softwareDirectory/AutoVerScheme/verifywindow.cpp @@ -895,19 +895,43 @@ dataRes[i][idx] = newdStdValue; ui->tableWidgetCheck->setItem(i,idx,new QTableWidgetItem(newdStdValue)); //示值 } - double dMean=0; - for(QString item : readItems){ - idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList(item)); - dMean += dataRes[i][idx].toDouble(); + QString sLast=readItems.last(); + if(header==sLast){ + double dMean=0; + for(QString item : readItems){ + idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList(item)); + dMean += dataRes[i][idx].toDouble(); + } + dMean /=readItems.count(); + newdStdValue=QString::number(dMean,'f',4); + idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList("算数平均值")); + if(idx!=-1) + { + dataRes[i][idx] = newdStdValue; + ui->tableWidgetCheck->setItem(i,idx,new QTableWidgetItem(newdStdValue)); + } + double dStdErr = 0; + for(QString item : readItems){ + idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList(item)); + dStdErr += pow(dataRes[i][idx].toDouble()-dMean,2); + } + dStdErr = sqrt(dStdErr/(readItems.count()-1)); + newdStdValue=QString::number(dStdErr,'f',4); + idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList("标准偏差S(X)")); + if(idx!=-1) + { + dataRes[i][idx] = newdStdValue; + ui->tableWidgetCheck->setItem(i,idx,new QTableWidgetItem(newdStdValue)); + } + newdStdValue=QString::number(dStdErr/dMean,'f',4); + idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList("相对重复性")); + if(idx!=-1) + { + dataRes[i][idx] = newdStdValue; + ui->tableWidgetCheck->setItem(i,idx,new QTableWidgetItem(newdStdValue)); + } } - dMean /=readItems.count(); - newdStdValue=QString::number(dMean,'f',4); - idx= getIndexByHeader(sLabel,labelItem,QStrTranQStrList("算数平均值")); - if(idx!=-1) - { - dataRes[i][idx] = newdStdValue; - ui->tableWidgetCheck->setItem(i,idx,new QTableWidgetItem(newdStdValue)); - } + BaseCommonApi::SaveLogInfo(1,QString("转换前 测试值 %1").arg(dStdValue)); BaseCommonApi::SaveLogInfo(1,QString("转换后 测试值 %1").arg(newdStdValue)); //Delay_MSec(2000);