J'utilise SPSS 20. Dans mon jeu de données est une liste de variables de chaîne que je veux recoder en numérique. À l'origine, je voulais qu'ils soient recodés en eux-mêmes. Je réalise que cela n'est pas possible car SPSS parcourt le jeu de données au cas par cas et une variable ne peut avoir qu'un seul type à la fois. Je veux donc qu'ils soient recodés dans de nouvelles variables mais avec le suffixe _rec
.SPSS REPEAT: Comment utiliser la variable de réserve dans le nom de la variable?
DO REPEAT var = var_1 var_2 ... var_n.
RECODE var (CONVERT) INTO var_rec.
END REPEAT.
Mais cela ne crée qu'un seul nouveau var_rec
variables non plusieurs nouveaux.
J'ai aussi essayé de programmer une solution de contournement:
COMPUTE Job_2
STRING Job(A20)
DO REPEAT var = var_1 var_2 ... var_n.
COMPUTE var = Job.
RECODE Job (CONVERT) INTO Job_2.
DELETE VARIABLES var.
COMPUTE var = Job_2.
END REPEAT.
Mais cela ne fonctionne pas parce que DELETE VARIABLES
ne peut pas être utilisé dans une boucle DO REPEAT
.
Donc, je suis de retour à ma question initiale.
À votre première suggestion: SPSS ne passerait-il pas par chaque liste de variables et recoderait donc var_1, var_2 et va3_3 dans var_1_rec (par exemple)? Seul var_3 serait recodé à la fin. À votre suggestion seccond: Pour ce faire, RECODE a besoin que toutes les variables soient du même type et de la même largeur. – Caspar
Mise à jour post pour aider. –
Merci beaucoup. Je ne savais pas que DO REPEAT fonctionne de cette façon. – Caspar