gpt4 book ai didi

spss - 在 SPSS 中处理日期范围

转载 作者:行者123 更新时间:2023-12-04 23:55:41 27 4
gpt4 key购买 nike

我为一年中的每个月设置了一个变量,该变量的值可以是 1(表示该月已检查过的内容)或 SYSMIS。

我如何将其重新编码为一个新变量,例如VAR1 我得到类似的东西

 0 = no checks in a year
1 = 1 check in a year
2 = 2 checks in a year every six months
3 = 2+ checks in a year (where 2 of them were six months apart)

作为替代方案,我一直在使用一个系统,在该系统中我计算当年的总支票,然后查看是否有 0、1 或 2+ 支票,但这并不准确,因为我看不到是否有两次支票相隔六个月或连续两个月

NUMERIC var1_Total (F3.0).
COMPUTE var1_Total=varA.1+varA.2+varA.3+varA.4+varA.5+varA.6+varA.7+varA.8+varA.9+varA.10+varA.11+varA.12.
EXECUTE.

NUMERIC var2 (F5.0).
VALUE LABELS var2 0 '0' 1 '1' 2 '>=2'.
IF (var1_Total=0) var2=0.
IF (var1_Total=1) var2=1.
IF (var1_Total>=2) var2=2.
EXECUTE.

最佳答案

那么您需要的是一个指示变量,它告诉您是否至少有两次支票恰好相隔六个月,对吧?

这样做就可以了:

* Check if one of the pairs (varA.1, varA.7; varA.2, varA.8; ...) both have the value 1.
DO REPEAT var_p1=varA.1 TO varA.6
/var_p2=varA.7 TO varA.12.
IF (var_p1=1 AND var_p2=1) six_month = 1.
END REPEAT.

然后你可以调整IF命令:

* Note that cases with var1_total>=2 but without checks six month apart will get the value 1.
IF (var1_Total=0) var2=0.
IF (var1_Total>=1) var2=1.
IF (var1_Total=2 AND six_month) var2=2.
IF (var1_Total>2 AND six_month) var2=3.
EXECUTE.

关于spss - 在 SPSS 中处理日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34155918/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com