使用后续值填充空白变量

时间:2015-04-30 09:19:40

标签: spss

我的数据集结构如下;

id    contracthours13    contracthours14    contracthours13u    contracthours14u
12    .                  13                 .                   13
13    30                 30                 .                   .
14    .                  .                  15                  16
15    .                  5                  6                   7

如果缺少contracthours13,我希望contracthours14中的值移动。如果缺少这个,那么我希望contacthours13u移动到contracthours14u,如果之前的3个都丢失了。我知道这是相当简单的语法,但我无法理解如何在没有运行更简单的语法3次的情况下做到这一点。如果有人能提供帮助,我们将不胜感激。

修改:以下是我希望我的数据集看起来像以后的样子。

id    contracthours13
12    13
13    30
14    15
15    5

1 个答案:

答案 0 :(得分:2)

查看VECTOR / LOOP个例子。

DATA LIST FREE / ID CH13 CH14 CH13U CH14U.
BEGIN DATA.
1 -1 13 -1 -1
2 30 30 -1 -1
3 -1 -1 15 16
4 -1 5 6 7
END DATA.
DATASET NAME DSRaw.
RECODE ALL (-1=SYSMIS).

VECTOR V= CH14 TO CH14U.
LOOP #i = 1 TO 3 IF (NVALID(CH13)=0).
  COMPUTE CH13=V(#i).
END LOOP IF NVALID(V(#i))=1.
LIST.
EXE.

**List**
  ID     CH13     CH14    CH13U    CH14U 

1.00    13.00    13.00      .        . 
2.00    30.00    30.00      .        . 
3.00    15.00      .      15.00    16.00 
4.00     5.00     5.00     6.00     7.00 


Number of cases read:  4    Number of cases listed:  4
相关问题