2016-11-10 129 views
3

我正嘗試在SPSS中使用循環創建一些指示符變量。使用循環在SPSS中創建指示符變量

我想創建17個新變量ABA(1-17)稱取1的值,如果BA(1-17)等於1。我是想是這樣的:

VECTOR ABA(17). 
LOOP #i = 1 to 17. 
IF(BA(#i)=1) ABA(#i) = 1. 
END LOOP. 
EXECUTE. 

此,不幸的是,只是創建缺少值的變量。上面的代碼是否需要小小的調整,或者是一種更有效的方式來創建變量?

回答

1

我相信你需要定義一組BA變量作爲一個向量,然後才能在代碼中引用它們。因此,嘗試:

VECTOR ABA(17) /BA=BA1 to BA17. 
LOOP #i = 1 to 17. 
IF(BA(#i)=1) ABA(#i) = 1. 
END LOOP. 
EXECUTE. 

注意,鑑於BA變量數據集中已經存在,你不能引用他們爲VECTOR BA(17).而是必須使用VECTOR BA=BA1 to BA17.如果不是爲了在數據文件中,那麼你將不得不讓他們爲了使用ADD FILES FILE重新排列變量排序。

+0

你是對的!我確實嘗試過'VECTOR BA(17)',但它沒有奏效。 – RTrain3k

+0

我不知道爲什麼'SPSS'不允許這樣做,但它也會讓我感到困惑,特別是當變量不正確時。如果它們不是,我傾向於跳到python尋找解決方案......這對於處理這些類型的動態更好。 –

+0

@JinneshSutar你知道任何很好的在線資源,可以解釋如何在SPSS中創建循環和向量嗎? – RTrain3k