Variables 统计spss中值的出现次数

Variables 统计spss中值的出现次数,variables,loops,count,spss,Variables,Loops,Count,Spss,我有50个变量,命名为w1到w50,每个变量都有一个从1到20的值。我想创建变量来显示每个值的出现次数。这是我想做的,但是SPSS似乎对我在COUNT命令中使用#n有问题 COMPUTE #n = 1 . DO REPEAT x = num1 to num20 . COMPUTE x = 0 . COUNT x = w1 to w50 (#n) . COMPUTE #n = #n + 1 . END REPEAT . 这是我收到的错误消息: 第24列中的错误#4772。正文:#n 在CO

我有50个变量,命名为w1到w50,每个变量都有一个从1到20的值。我想创建变量来显示每个值的出现次数。这是我想做的,但是SPSS似乎对我在COUNT命令中使用#n有问题

COMPUTE #n = 1 .
DO REPEAT x = num1 to num20 .
 COMPUTE x = 0 .
 COUNT x = w1 to w50 (#n) .
 COMPUTE #n = #n + 1 .
END REPEAT .
这是我收到的错误消息:

第24列中的错误#4772。正文:#n 在COUNT命令上,括号内的值列表在语法上无效。
此命令停止执行。

您不能在
COUNT
命令中提供变量作为值列表。幸运的是,您的示例的解决方法非常简单-您可以在
DO REPEAT
上使用备用增量:

DO REPEAT x = num1 to num20 /#i = 1 to 20.
  COUNT x = w1 to w50 (#i).
END REPEAT.
下面是完整的示例

**********************************************.
*creating fake data.
data list free / ID.
begin data
1
2
end data.
vector w(50,F2.0).
loop #i = 1 to 50.
  compute w(#i) = TRUNC(RV.UNIFORM(1,21)).
end loop.
vector num(20,F2.0).
execute.

*making new vector.
DO REPEAT x = num1 to num20 /#i = 1 to 20.
  COUNT x = w1 to w50 (#i).
END REPEAT.
EXECUTE.
**********************************************.

比我想象的容易!谢谢:)