计算带条件的出场次数

时间:2019-04-18 14:50:35

标签: spss

我正在尝试计算电子邮件在数据中出现的次数。 我目前正在使用此代码:

AGGREGATE /OUTFILE=* MODE=ADDVARIABLES /BREAK=Email 
/Number=N.

这很好,但是缺少我需要的一个条件。

我还有另一个变量:周(数字),带有选项1、2、3、4、5或6。

我只希望SPSS对在第6周出现的电子邮件进行计数。

例如:

  Email            Week         N
jane@aol.com         6          2
bill@gmail.com       3          
bill@gmail.com       4         
sarah@hotmail.com    6          1
jane@aol.com         4          2

如您所见,由于jane@aol.com在第6周中至少出现了一次,因此我希望它计算文件中她电子邮件的其余部分(包括在第6周中未出现的部分)。 但是比尔,他两次出现在文件中,但我不想统计他,因为这两个实例都不在第6周。

我该如何编辑语法以实现此目的? 谢谢!

1 个答案:

答案 0 :(得分:0)

首先,重新创建示例数据:

data list list/email(a50) week(f1).
begin data
"jane@aol.com" 6
"bill@gmail.com" 3
"bill@gmail.com" 4
"sarah@hotmail.com" 6
"jane@aol.com" 4
end data.

现在运行此:

* Identifying emails that had week 6 at least once:  .
if week=6 has6=1.
aggregate out=* mode=addvariables overwrite=yes/break=email /has6=max(has6).
* now to count occurences.
aggregate out=* mode=addvariables /break=email /n=sum(has6).