Méthode fetchall (Python)
.fetchall (): Fette toutes les observations (restantes) du jeu de données actif ou, s'il existe des divisions, les observations restantes de la division en cours. S'il ne reste plus de lignes, le résultat est un tuple vide.
- Cette méthode est disponible en mode lecture ou écriture.
- Lorsqu'il est utilisé en mode écriture, l'appel de
fetchallpositionne le pointeur d'enregistrement sur la dernière observation du jeu de données actif ou, s'il y a des divisions, sur la dernière observation de la division en cours. - Les observations du jeu de données actif sont renvoyées sous forme de liste de tuples. Chaque tuple représente les données d'une observation et les tuples sont organisés dans le même ordre que les observations du jeu de données actif. Chaque élément d'un tuple contient la valeur de données d'une variable spécifique. L'ordre des valeurs de variable dans un tuple est l'ordre spécifié par les valeurs d'index de variable dans l'argument facultatif n de la classe
Cursorou l'ordre du fichier si n est omis. Par exemple, si n= [ 5,2, 7 ] le premier élément de tuple est la valeur de la variable avec la valeur d'index 5, le second est la variable avec la valeur d'index 2 et le troisième est la variable avec la valeur d'index 7.
- Les valeurs de chaîne sont remplies à droite de la largeur définie de la variable de chaîne.
- Les valeurs système manquantes sont toujours converties au type de données Python None.
- Par défaut, les valeurs manquantes de l'utilisateur sont converties au type de données Python Aucun. Vous pouvez utiliser la méthode SetUserMissingInclude pour spécifier que les valeurs manquantes doivent être considérées comme valides.
- Les valeurs des variables avec des formats d'heure sont renvoyées sous forme d'entiers représentant le nombre de secondes à partir de minuit.
- Par défaut, les valeurs des variables avec des formats de date ou de date-heure sont renvoyées sous forme d'entiers représentant le nombre de secondes à partir du 14 octobre 1582. Vous pouvez spécifier la conversion des valeurs de ces variables en objets Python
datetime.datetimeà l'aide de l'argument cvtDates de la fonctionspss.Cursor. Pour plus d'informations, voir spss.Cursor Class (Python) . - Si une variable de pondération a été définie pour le jeu de données actif, les observations avec des valeurs nulles, négatives ou manquantes pour la variable de pondération sont ignorées lors de l'extraction des données avec
fetchone,fetchalloufetchmany. Si vous devez extraire toutes les observations lorsque la pondération est activée, vous pouvez utiliser la classe de fichier. - Les méthodes
fetchone,fetchalletfetchmanyrespectent les filtres de casse spécifiés avec les commandesFILTERouUSE.
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
dataCursor=spss.Cursor()
dataFile=dataCursor.fetchall()
for i in enumerate(dataFile):
print i
print dataCursor.fetchall()
dataCursor.close()
END PROGRAM.
Résultat
(0, (11.0, 'ab', 13.0))
(1, (21.0, 'cd', 23.0))
(2, (31.0, 'ef', 33.0))
()
Extraction avec index de variable
DATA LIST FREE /var1 var2 var3.
BEGIN DATA
1 2 3
1 4 5
2 5 7
END DATA.
BEGIN PROGRAM.
import spss
i=[0]
dataCursor=spss.Cursor(i)
oneVar=dataCursor.fetchall()
uniqueCount=len(set(oneVar))
print oneVar
print spss.GetVariableName(0), " has ", uniqueCount, " unique values."
dataCursor.close()
END PROGRAM.
Résultat
((1.0,), (1.0,), (2.0,))
var1 has 2 unique values.