当变量位于不同列时,使用SAS执行t检验

时间:2018-04-30 04:54:57

标签: sas

我的数据如下所示。 我想知道如何在我想要比较的变量位于不同的列中时运行t检验

+---------+------------+----------+-------------+-------------+----------------+
| Case_id | Control_id | case_age | control_age | case_result | control_result |
+---------+------------+----------+-------------+-------------+----------------+
|       1 |         50 |       24 |          24 |          23 |             12 |
|       1 |         52 |       24 |          24 |          23 |             10 |
|       2 |         65 |       27 |          27 |          24 |             15 |
|       2 |         70 |       27 |          27 |          24 |             14 |
+---------+------------+----------+-------------+-------------+----------------+

SAS教程指出了运行t检验的以下语法。但在我的情况下,我没有类变量来区分案例和控制。有没有办法告诉SAS比较两个变量case_resultcontrol_result

proc ttest data;
   class Gender;
   var Score;
run;

1 个答案:

答案 0 :(得分:3)

如果您想比较两个变量,可以这样做:

proc compare base=libname.dataset allstats briefsummary;    
       var var1;
       with var2;
       title 'Comparison two variables';
run;

在差异b / w两个变量(配对比较)上运行ttest,

proc ttest data=libname.dataset;
   paired var1*var2;
run;