好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

精密度实验变异系数计算的SAS宏程序讲解.doc

7页
  • 卖家[上传人]:壹****1
  • 文档编号:523429303
  • 上传时间:2023-01-07
  • 文档格式:DOC
  • 文档大小:21.50KB
  • / 7 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 精选优质文档-----倾情为你奉上精密度实验变异系数计算的SAS宏程序         【摘要】    评价医院实验室检测结果的准确性和稳定性,需要进行精密度实验,以确定检测结果是否处于所控制的范围内通过计算精密度实验批内、批间、天间以及总的变异系数,能够反映实验仪器精密度好坏通过编写SAS宏程序,可以应用SAS统计软件直接输出以上变异系数的统计报表 【关键词】  精密度实验; 变异系数; 统计分析报表; SAS宏程序  1  精密度实验      评价医院实验室检测结果的准确性和稳定性,需要进行精密度评价实验,以确定检测结果是否处于所控制的范围内精密度实验通常包括批内、批间以及日间重复实验对同一批次质控标本的重复测定,要求每天在不同时间点测定同一批次质控标本2次(2次测定间隔不得少于2小时),为批内重复实验;每次测定均做不同批次质控标本双份,为批间重复实验;一般要求连续测定20天,为天间重复实验,这是对检测系统天间不精密度的观察      对精密度实验结果进行统计分析,反映实验仪器精密度好坏的指标是变异系数(CV)CV越小精密度越好,反之则差,故也称其为不精密度通常按以下公式可以计算出批内、批间、天间和总CV,其中总CV最重要,它代表整个分析体系的可重复程度。

            S批内=?ni=1 ?2j=1 (Xij1-Xij2)24n      式中:S批内为批内标准差;n为实验天数(n=20);i为第i天(1~20);j为1天内的批数(1或2);xij1为第i天第j批的第1个结果;xij2为第i天第j批的第2个结果      A=?ni=1 (Xi1-Xi2)22n      式中: A为批间差异水平;Xi1为第i天第1批的结果均数;Xi2为第i天第2批的结果均数      B=?ni=1 (i-)2n-1      式中:B为天间差异水平;i为第i天的结果均数;为所有实验结果均数      S总=2B2+A2+S2批内2      式中:S总为总标准差      CV总=S总/       式中:CV总为总变异系数;S总为总标准差;为所有实验结果均数  2  编写SAS宏程序      为直接得到如表1所示统计分析报表,编写以下SAS宏程序数据集名为&database,统计变量为&var,其中第1批2次测定数据结果分别为&var.1和&var.2,第2批2次测定数据结果分别为&var.3和&var.4,输出总变异系数的数据集名为&dataout。

        表1  精密度试验变异系数统计分析(略)  2.1  定义输出表的格式  %macro tformat; /*定义宏,输出统计报表的格式*/  proc format;     invalue g      1=20      2=40;  %mend tformat;  2.2  计算变异系数      调用proc univariate过程计算批内标准差s、批间差异水平a、天间差异水平b和所有实验结果均数x,利用公式计算出总的变异系数CV  %macro cv(database,var,dataout); /*定义sas宏程序cv*/  data data1;  set &database(keep=&var.1 &var.2 &var.3 &var.4);     d1=(&var.1-&var.2)**2+(&var.3-&var.4)**2;  proc univariate normal noprint;  var d1;  output out=d1 sum=sum n=n;  data s;  set d1;  s=sqrt(sum/(4*n)); /*取平方根值,得到批内标准差s*/  run;  data data2;  set &database(keep=&var.1 &var.2 &var.3 &var.4);     d2=((&var.1+&var.2)/2-(&var.3+&var.4)/2)**2;  proc univariate normal noprint;  var d2;  output out=d2 sum=sum n=n;  data a;  set d2;  a=sqrt(sum/(2*n)); /*取平方根值,得到批间差异水平a*/  run;  data data3;  set &database(keep=&var.1 &var.2 &var.3 &var.4);     d3=(&var.1+&var.2+&var.3+&var.4)/4;  proc univariate normal noprint;  var d3;  output out=b std=b mean=x; /*生成天间差异水平b和所有实验结果均数x*/  run;  data cv;  merge s(keep=s) a(keep=a) b(keep=b x);    cv=sqrt((2*(b**2)+a**2+s**2)/2)/x;  run;  data &dataout;  set cv(keep=s a b cv) nobs=nobs; /*合并数据集,其中包含s,a,b*/          nu=nobs;  s=100*s; /*由于变异系数通常用百分数表示,因此,将所得到的值乘以100*/  a=100*a;  b=100*b;  cv=100*cv;  run;  proc datasets;  delete data1 data2 data3 d1 d2 s a b cv; /*删除程序中生成的临时数据集*/  quit;  %mend cv;  2.3  定义输出结果的位置      定义宏FC,输出批内标准差s、批间差异水平a、天间差异水平b和总的变异系数CV的位置。

        %macro fc(invar,cvar,p);  if &invar then do;       if inds=1 then do;      row+&p;      put #row @4 "&cvar" @22 s 6.2 '%' @34 a 6.2 '%' @50 b 5.2 '%' @64 cv 5.2 '%'            #(row+1) @2 75*'-';      end;      if inds=1 then  inds=0;  end;  %mend fc;  定义宏nullset,产生一个输出表,集成已产生的批内标准差s、批间差异水平a、天间差异水平b和总的变异系数CV,并按定义排列将输出表存入d盘sas目录下,文件名为&tab的文本文件,&tab为宏变量  %macro nullset(data);  data _null_;      file "d:\sas\&tab..txt" print n=ps notitles header=head;       set &data;      inds+1;      col=input(g,g.);  %mend nullset;  2.4  运行宏程序      将以上SAS程序提交SAS系统运行,即可自动生成统计分析表1。

      其中数据集名为main,变量名分别为high、mid、low  %let tab=表1; /*将宏变量&tab赋值为表1,即生成的文件名为:表1.txt*/  %tformat;   %cv(main,high,fhigh);  %cv(main,mid,fmid);  %cv(main,low,flow);  %nullset(fhigh(in=fhigh) fmid(in=fmid) flow(in=flow));  %fc(fhigh,全血高切粘度值,2);  %fc(fmid,全血中切粘度值,2);  %fc(flow,全血低切粘度值,2);  2.5  其他辅助程序  /*定义输出表的表头*/  return;  head:     put # 2 @10 "&tab 精密度试验变异系数统计分析"           # 3 @2  75*'-'           # 4 @6 '检测指标' @20 '批内变异系数' @34 '批间变异系数'  @48 '天间变异系数' @62 '总变异系数'           # 5 @2 75*'-';  row=6;  return;  run;  /*将d:\sas\&tab..txt文件在PGM窗口输出*/  %macro dminc( );  Dm"inc'd:\sas\&tab..txt'";  run;  %mend dminc;  %dminc;  3  讨论      精密度实验是医院实验室进行质量控制经常采用的方法,其数据统计分析较多采用Excel2000等软件进行,对批内、批间变异系数计算比较方便容易,但对总变异系数的计算往往比较困难,而且常常需要人为转抄为word文档,容易出现错误。

      SAS统计分析软件是当前国际上最流行、并具有权威性的统计分析软件,目前在我国临床药物研究领域应用较为广泛我们通过编制SAS宏程序,直接由SAS系统计算得到总变异系数,并输出简明的统计分析报表,减少了人为转抄产生的错误,保证结果的真实准确性对于精密度实验其他检测指标的统计分析,只需要在SAS宏程序中对变量名进行相应的修改,就能够方便地得到统计表,减少分析处理时间参考文献】    1 高慧璇,李贵斌,耿直,主编.SAS系统Base SAS软件使用手册.北京:中国统计出版社,2001.  2 董新元,张高魁,姚晨.新药临床试验中定量指标的SAS统计报表.军医进修学院学报,2005,26(1):71~72.  3 胡良平,主编.现代统计学与SAS应用.北京:军事医学科学出版社,2000.专心---专注---专业。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.