Mode d'ajout (Python)

Ce mode est utilisé pour ajouter de nouvelles observations au jeu de données actif. Il ne peut pas être utilisé pour ajouter de nouvelles variables ou lire des données d'observation à partir du jeu de données actif. Un jeu de données doit contenir au moins une variable pour pouvoir y ajouter des observations, mais il n'a pas besoin de contenir d'observations. Le mode d'ajout est spécifié avec spss.Cursor(accessType='a').

  • La méthode CommitCase doit être appelée pour chaque cas ajouté.
  • La méthode EndChanges doit être appelée avant la fermeture du curseur.
  • Les modifications apportées au jeu de données actif ne prennent effet que lorsque le curseur est fermé.
  • Une variable numérique dont la valeur n'est pas spécifiée (pour une nouvelle observation) est définie sur la valeur système manquante.
  • Une variable de chaîne dont la valeur n'est pas spécifiée (pour une nouvelle observation) aura une valeur vide. La valeur sera valide sauf si vous définissez explicitement que la valeur vide est manquante pour cette variable.
  • Les méthodes Cursor SetValueChar et SetValueNumeric sont utilisées pour définir les valeurs des variables pour les nouveaux cas.

Exemple

DATA LIST FREE /var1 (F) var2 (A2)  var3 (F).
BEGIN DATA
11 ab 13
21 cd 23
31 ef 33
END DATA.
BEGIN PROGRAM.
import spss
cur=spss.Cursor(accessType='a')
ncases=cur.GetCaseCount()
newcases=2
for i in range(newcases):
   cur.SetValueNumeric('var1',1+10*(ncases+i+1))
   cur.SetValueNumeric('var3',3+10*(ncases+i+1))
   cur.CommitCase()
cur.EndChanges()
cur.close()
END PROGRAM.
  • Une instance de la classe Cursor en mode ajout est créée et affectée à la variable cur.
  • La méthode SetValueNumeric est utilisée pour définir les valeurs d'observation de var1 et de var3 pour deux nouvelles observations. Aucune valeur n'est spécifiée pour var2. La méthode CommitCase est appelée pour valider les valeurs de chaque observation.
  • La méthode EndChanges est appelée pour valider les nouveaux cas sur le curseur.