我在SPSS中有一个数据库,其结构如下表所示:
ID | 性别 | 年龄变量1 | >变量|||
---|---|---|---|---|---|
1 | 0 | 7 | 3 | ||
2 | 1 | 8 | 4 | ||
3 | 1 | 9 | 5|||
4 | 1 | 9 | 2 |
compute filter_ = $sysmis.
compute counter_ = 0.
if $casenum=1 and (Gender = 1 and Age = 9) counter_ =1 .
do if $casenum <> 1.
if ~(Gender = 1 and Age = 9) counter_ = lag(counter).
if (Gender = 1 and Age = 9) counter_ = lag(counter) +1.
end if.
compute filter_ = (Gender = 1 and Age = 9 and counter<= 150).
execute.
我不确定这是否是最有效的方法,但它能完成任务。我们使用counter_
变量为满足条件的每个记录分配一个订单号("计数"符合条件的记录,从文件顶部向下(。然后创建前150个这样的记录的过滤器。
下面将选择gender=1 AND age=9
的前150个案例(假设150个案例符合该标准(。
N 150.
SELECT IF (Gender=1 AND Age=9).
EXE .
翻转N
和SELECT IF ()
的顺序将产生相同的结果。您可以在IBM文档中阅读有关N
的更多信息