SAS使Proc FREQ以多个变量为条件

时间:2016-01-29 09:41:59

标签: sas proc

我的数据集的结构大致如下:

data have;
input Name $ year cat var1 var2 var3;
datalines;
adam 2011 1 7 8 7 
bob 2011 2 0 1 0 
clint 2011 1 0 0 0 
adam 2011 9 15 8 9
bob 2011 9 4 56 3 
clint 2011 9 8 4 2
adam 2012 1 4 5 6
bob 2012 2 3 1 1 
clint 2012 1 1 2 3
adam 2012 9 17 8 6
bob 2012 9 17 2 6 
clint 2012 9 13 8 4
;
run;

现在我想以两个变量(至少)为条件使PROC FREQ成为条件。我试过了

proc freq data=have;
where year = 2012 and where cat=9;
tables var1 * var2;
quit;

以及

proc freq data=have;
where year = 2012;
where cat=9;
tables var1 * var2;
quit;

但它们不起作用,我无法在网上找到解决方案。

非常欢迎任何想法!

Gerit

2 个答案:

答案 0 :(得分:2)

你非常接近:

proc freq data=have;
    where year = 2012 and cat=9;
    tables var1 * var2;
quit;

您可以在此处详细了解wherehttp://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000202951.htm

答案 1 :(得分:2)

当您添加另一个WHERE语句时,默认值是替换已应用的任何where语句。您可以添加关键字ALSO以添加到现有位置。

proc freq data=have;
where year = 2012;
where ALSO cat=9;
tables var1 * var2;
quit;
相关问题