Le test statistique est une étape incontournable du traitement d’enquête car il va permettre de mettre en lumière les différences importantes entre plusieurs sous-populations.
Nous allons aujourd’hui nous concentrer sur le « test de comparaison des proportions colonnes » (« colonne versus colonne »), mais le même principe s’applique également pour d’autres tests tel que le « test de comparaison des moyennes » par exemple.
Dans « IBM SPSS Data Collection », il y a plusieurs manières de spécifier ce test.
Soit on le spécifie dans les paramètres généraux (de notre fichier MRS) et il sera automatiquement appliqué à l’ensemble des tableaux (pour lesquels on a une variable en colonne évidemment) :
With TableDoc.Default With .Statistics .Add("ColumnProportions") .ColumnProportions.SigLevel = 5 End With End With
(NB : il s’agit ici d’un test avec un seuil de significativité demandé à 5%)
Soit on peut aussi le spécifier pour un tableau en particulier, par exemple :
With TableDoc.Tables .AddNew("Table1","sexe * q1","Test stat 1") .Table1.Statistics.Add("ColumnProportions") .Table1.Statistics.ColumnProportions.SigLevel = 5 End With
On obtient ensuite un tableau de ce type :
Jusque là tout va bien, mais que se passe-t-il si on souhaite « personnaliser » un peu plus ce test ? En effet, ici par défaut, le test statistique a été appliqué automatiquement à toutes les colonnes n’étant pas un élément de type « base ».
Or on pourrait par exemple vouloir que le test ne soit pas appliqué pour la colonne « Autre marque » (lettre D dans l’exemple précédent) et soit par contre appliqué pour la colonne « Total » (qui est un élément de type « base » ici).
Pour faire cela, une solution consiste à le spécifier sur notre tableau comme suit :
With TableDoc.Tables .AddNew("Table1","sexe * q1","Test stat 1") .Table1.Statistics.Add("ColumnProportions") .Table1.Statistics.ColumnProportions.SigLevel = 5 .Table1.Statistics.ColumnIDs = "ZABC." .Table1.Statistics.TestColumns = "Z/A/B/C" End With
(NB : ici toutes les colonnes seront considérées dans l’ordre et le « point » permet de spécifier une colonne qui sera ignorée par le test)
Et on obtient ainsi le tableau suivant :
Mais que se passe-t-il si on souhaite appliquer cette même règle pour l’ensemble des tableaux spécifiés dans notre fichier MRS ? Eh bien cela n’est pas possible ! Les options « ColumnIDs » et « TestColumns » ne sont pas disponibles dans les paramètres généraux des tableaux. Il faudra donc ajouter ses paramètres à la définition de chacun des tableaux, ce qui n’est pas du tout pratique…
Heureusement, il y a une astuce (non présente dans la documentation officielle) que je vais vous exposer aujourd’hui : il est possible d’utiliser une boucle sur les tableaux définis pour leur appliquer automatiquement à tous, les paramètres « ColumnIDs » et « TestColumns ».
Voici un exemple (à placer juste avant le remplissage des tableaux « Populate() ») :
Dim MyTable For Each MyTable in TableDoc.Tables MyTable.Statistics.ColumnIDs = "ZABC." MyTable.Statistics.TestColumns = "Z/A/B/C" Next
Un sacré gain de temps ! 😉