Vous êtes sur la page 1sur 11

UE4

Méthodes 5 – méthode de l’enquête : le questionnaire



L3 Sciences de l’éducation

Enseignant : Nadia LEROY


TD méthode d’enquête : le questionnaire

Analyse Factorielle Exploratoire et Analyse


Factorielle Confirmatoire


Objectifs :

Se familiariser à l’analyse des données multidimensionnelles et à la réduction des
données grâce aux méthodes de factorisation (regroupement de variables)

Rappel :

L’analyse des données multidimensionnelles a pour but de réduire les données en


un nombre plus facilement interprétable et manipulable de regroupement de
variables ; les facteurs latents.
Devant la masse de données recueillies grâce à votre questionnaire, il va falloir
présenter une vision d’ensemble des données de manière à synthétiser l’ensemble
des données.
Dans cette situation, la première étape est de vérifier comment les variables co-
fonctionnent.
Le recours à une matrice de corrélations est ainsi approprié pour une première
exploration des données multidimensionnelles.
Dans un second temps, un regroupement de variables en facteur ou dimensions sera
effectué.


1. Matrice de corrélation et corrélogramme


Rappel: pour réaliser une matrice de corrélation sous R, on utilise la fonction
corr.test() du package psych sur les variables concernées avec, le cas
échéant, des arguments.

- Installez d’abord le package grâce au menu déroulant de l’invite de


commande: Packages > installer le(s) package(s)…

1

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


- Chargez ensuite le package grâce au menu déroulant de l’invite de
commande: Packages > charger le package
- Importez vos données grâce à la fonction read.csv2()
read.csv2("data.csv", sep=";", header=TRUE, na.string="NA")-> data
- Chargez vos données
data
- Créez votre matrice de corrélation

mat<-corr.test(data,use="pairwise",method="spearman")

Explication :
Ici l’argument use="pairwise", permet d’écarter les variables manquantes,
l’argument method="spearman" permet de spécifier le test à effectuer, ici le
coefficient de corrélation de Pearson


- Afficher la matrice de corrélation
mat

La sortie de l’objet mat présente la matrice des coefficients de corrélations bivariés r


(mat$r) et celle des p-valeurs associées (mat$p).

- Produire la représentation graphique de la matrice

Pour plus de lisibilité, il est conseillé d’utiliser la fonction corrplot() du package


corrplot qui permet d’obtenir une représentation graphique de cette matrice de
corrélation (ou corrélogramme).
Installer dans un premier temps le package (cliquer sur « packages & données »
dans le menu principal à « installateur de package ». Dans la fenêtre « recherche de
package », inscrire corrplot. Cliquer sur « installer/mettre à jour ».
Une fois le package installé, le charger grâce à la fonction library(corrplot)
Utilisez la fonction corrplot() pour obtenir la représentation graphique de la
matrice.

corrplot(mat$r,"number","upper",p.mat=mat$p,diag=F)

L’argument "number" permet d’indiquer les valeurs et "upper" de supprimer la


partie inférieure de la matrice en redondance avec la partie supérieure.
Le paramètre diag=F supprime la diagonale de 1 représentant la corrélation d’une
variable avec elle-même.
Parmi les matrices contenues dans l’objet mat, nous choisissons de représenter ici
celle des coefficients de corrélation r mat$r, c’est-à-dire la taille d’effet de chacune
des relations bivariées.
2

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


Un code couleur bleu (positif) et rouge (négatif) aide à repérer facilement le sens de
la relation.
Nous utilisons ici le paramètre p.mat= avec la sortie mat$p (matrice des p-valeurs)
pour barrer les probabilités supérieures à .05 (donc non significatives)

2. Réduction en facteurs ou dimensions

Plutôt que de tester l’effet isolé de chaque variable sur les critères d’intérêt, il peut
être plus judicieux, lorsque cela a du sens, de grouper ensemble (dimension ou
facteur) les variables qui corrèlent entre elles.
.
Cela est d’autant plus vrai lorsque les variables
en question sont des items (questions,
énoncés) supposés rendre compte d’un même
facteur ou d’une même dimension.

On appelle factorisation le procédé qui consiste


à réduire un ensemble de variables ou d’items
en un nombre plus réduit de dimensions.

Dans cet exemple, au lieu de raisonner sur la


base de 10 items, on prend désormais pour
référence les deux dimensions qui regroupent
ces items et on leur prête un sens (une
cohérence)
En bout de chaîne, on trouve le facteur qui
explique les deux dimensions et donc a fortiori
la totalité des items.

Rappel : il existe plusieurs méthodes de
factorisation :
L’ACP (Analyse en Composante Principale)
L’AF (Analyse Factorielle)


L’utilisation d’un plan factoriel est une technique qui permet d’obtenir une vue
d’ensemble de la façon dont s’organisent les variables entre elles en fonction de la
réponse des sujets.
Ce graphique est obtenu en réalisant une ACP.
Sur R, il est possible d’utiliser la fonction PCA() du package FactoMineR.
Cette fonction s’applique à condition qu’il n’y ait pas de données manquantes. On va
donc créer un nouveau tableau de données à partir du précédent en veillant à
exclure toute donnée manquante

3

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY



data1<-na.omit(data)
data1
ACP<-PCA(data1)

Interprétation : sur ce diagramme, les variables
sont représentées sur un plan en 2 dimensions.
La première sur un plan (un axe) horizontal
(dimension1), la seconde sur un plan (un axe)
vertical (dimension2)

Plus une variable se situe près d’une de ces


deux dimensions, plus en est représentative.
La dimension 1 explique 51.48% de la variance
des variables, alors que la dimension 2 en
explique 18.63%

La relation entre deux variables forme un angle


qui s’interprète comme un coefficient de
corrélation
0°= corrélation positive parfaite (r=1)
180°= corrélation négative parfaite (r=-1)
90°=absence de corrélation (r=0)

Ici les variables tension, stress et dépression


sont corrélées positivement entre elles et
corrélées négativement avec le bien-être. La

variable âge est trop éloignée du bord du cercle

pour être significativement liée à une autre
variable


3. Analyse factorielle exploratoire et confirmatoire

Rappel : L’Analyse Factorielle (AF) sert
- A partir d’un ensemble d’items et sans a priori, à dégager des facteurs ou
variables latentes (non observées)
- A tester un modèle prédéterminé comprenant des items et des facteurs ou
variables latentes (non observées)
L’AF est une méthode de réduction des données qui permet le regroupement de
variables en un nombre limité de facteurs.

Supposons que nous avons fait passer un questionnaire de 6 items à 92 étudiants.


Les échelles sont de type Likert et vont de 0 (« pas du tout d’accord ») à 10 (« tout à
fait d’accord »).

4

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY

Les 3 premiers items se rapportent à la satisfaction des étudiants vis-à-vis d’une


matière académique (item 1, item 2, et item 3)
Les 3 derniers se rapportent au sentiment de compétence perçue dans la matière
(item 4, item 5 et item 6)
On postule ici l’existence de 2 facteurs (satisfaction et sentiment de compétence).
Cependant, nous n’avons pas de preuve pour l’affirmer voilà pourquoi nous allons
procéder à une AFE (sans a priori sur le nombre précis ou sur la composition précise
des facteurs) et / ou une AFC (c’est-à-dire avec un modèle précis à tester)

3.1. L’Analyse Factorielle Exploratoire - AFE



Dans l’AFE on n’a pas d’a priori sur la manière dont les données devraient se
comporter.
Nous ne testons pas de modèle a priori en particulier, nous souhaitons en faire
émerger un.

a. Condition préalables

Avant cela il faut s’assurer qu’il n’y a pas d’items inversés. Si c’est le cas, il faudra
procéder à une inversion de la cotation des items afin que les items aillent tous dans
le même sens.
L’inversion de cotation se fait grâce à la fonction recode() disponible dans le
package car.
Installer et charger le package car.
Procéder au recodage pour chaque item le nécessitant. Ici on veut recoder les items
3 et 6

data$item3<-recode(data$item3,"0='10'; 1='9'; 2='8'; 3='7';


4='6' ; 5='5' ; 6='4'; 7='3'; 8='2'; 9='1'; 10='0'")

data$item6<-recode(data$item6,"0='10'; 1='9'; 2='8'; 3='7';


4='6' ; 5='5' ; 6='4'; 7='3'; 8='2'; 9='1'; 10='0'")

Absence d’outliers (ou données extrêmes). Pour cela, il est possible d’effectuer des
boxplot mais assurez-vous en dès la saisie des questionnaires en filtrant vos
données.

5

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


Il faut également s’assurer que les données sont suffisamment factorisables.
Cela signifie qu’il faut que la matrice de corrélation contienne suffisamment de
corrélations importantes pour faire émerger un ou plusieurs facteurs. Cela peut
commencer par une inspection de la matrice de corrélation effectuée plus haut grâce
à la fonction corr.test() qui donne la matrice de corrélation ainsi que les p-
valeurs associées à chaque corrélation.
Cette inspection visuelle doit obligatoirement s’accompagner de l’obtention de deux
indices : le KMO (Kaiser-Meyer-Olkin) et le test de Bartlett. Ces deux indices nous
indiquent si la matrice de corrélations contient suffisamment de corrélations pour être
considérée comme adaptée à l’AFE.
Les deux fonctions sont issues du package psych (installé auparavant)

KMO(data[,1:6])

(KMO<0.5=inacceptable ; 0.5=très faible ; 0.6=faible ; 0.7=moyen ; 0.8=correct ;


0.9=très correct)

cortest.bartlett(data[,1:6], n=92)

Le résultat du test doit être significatif afin de pouvoir dire que notre matrice est
significativement différente d’une matrice ne comportant que des corrélations nulles.

Si le KMO ou le test de Bartlett ne sont pas satisfaisants, il faut réexaminer la matrice


de corrélations et éliminer les items qui sont trop peu ou trop fortement corrélés aux
autres.

b. Paramétrage de l’AF

Une fois s’être assuré que les conditions préalables sont remplies il faut déterminer
la méthode d’extraction, le nombre de facteurs à extraire, ainsi que la méthode de
rotation à retenue.

La méthode d’extraction : dans le cadre d’une AFE il existe deux grandes
méthodes d’extraction de facteur. La méthode par le maximum de vraisemblance
(ML) pour les données qui suivent une loi normale et la factorisation en axe
principaux (PA) pour les données qui ne suivent pas une loi normale.

Cela suppose donc en amont de tester si les données suivent une loi normale.
Pour ce faire, il faut soumettre chaque item au test de Shapiro grâce à la fonction
Shapiro.test()

shapiro.test(data$item1)
shapiro.test(data$item2)
shapiro.test(data$item3)…

6

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


Si le résultat du test est significatif, cela indique que les données ne suivent pas une
loi normale, on optera alors pour la méthode de factorisation en axe principaux. Si le
test est non significatif, cela indique que les données suivent une loi normale. On
choisira alors la méthode par le maximum de vraisemblance.

Nombre de paramètres à extraire : même si les considérations théoriques doivent


normalement conduire à déterminer a priori le nombre de facteurs à extraire, il est
toujours mieux de commencer par le tester de manière exploratoire avec la fonction
fa.parallel() du package psych
Pour cette fonction, il faudra spécifier le type d’analyse (exploratoire) ainsi que la
méthode d’extraction.

Pour une analyse exploratoire on spécifiera l’argument (fa= "fa")


En ce qui concerne la technique d’extraction, on utilisera (fm= "ml") pour des
données qui suivent une loi normale et (fm= "pa") si les données ne suivent pas
une loi normale

fa.parallel(data[,1 :6], fa= "fa", fm= "pa")

Cette fonction produit le scree plot de l’analyse qu’il faut maintenant interpréter pour
choisir le nombre de facteurs à extraire.
Trois élément du scree plot sont à prendre en considération conjointement :
- L’endroit où la droite pleine (« actual data ») passe sous le seuil représentant
la valeur propre de 1
- L’endroit où la droite pleine (« actual data ») passe sous les droites en
pointillés (« simulated data » et « resampled data »)
- L’endroit où la droite pleine (« actual data ») s’aplanit indiquant qu’un facteur
supplémentaire n’apporte que peu de variance expliquée additionnelle.

Choix de la méthode de rotation : la rotation permet de rendre le résultat plus


lisible et interprétable en séparant le plus nettement possible les facteurs.
Il existe deux types de rotation ; la rotation orthogonale (appelée varimax) qui doit
être choisie lorsque les facteurs sont supposés indépendants (c’est-à-dire non
corrélés entre eux). Dans le cas contraire, on choisit la rotation oblique (oblimin).
Dans tous les cas, il faudra présenter une matrice de corrélation entre les facteurs
pour appuyer a posteriori la décision de recourir à l’une ou à l’autre des méthodes.

c. Réalisation de l’AFE

Utiliser la fonction fa() en précisant les données sur lesquelles portent l’analyse, le
nombre de facteurs à extraire (que l’on aura déterminé grâce au scree plot), la
méthode d’extraction fm= "ml" ou fm= "pa" (que l’on aura déterminé en fonction
du résultat des tests de Shapiro), la méthode de rotation rotate= "varimax"
pour une rotation orthogonale ou rotate= "oblimin" pour une rotation oblique et
enfin le paramètre de gestion des données manquantes use="pairwise".
7

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY

Afin de pouvoir effectuer la rotation, il est nécessaire d’installer sur certaines version
de R le package GPArotation
install.packages("GPArotation")
library(GPArotation)

fa(data[,1 :6],nfactors=2,rotate="oblimin",fm="pa",use="pairwi
se")

Aide à la lecture de la sortie :

Plus un item est unique (cf. colonne u2 qui indique le critère uniqueness), moins il a
de points communs avec les autres items. Les valeurs uniqueness (variance propre
de l’item, c’est-à-dire la variance non partagée avec les autres items) doivent être
faibles, au moins inférieures à .60 indiquant que l’item participe à la solution, c’est-à-
dire qu’il est utile.

Chaque item doit présenter une saturation factorielle supérieure à .30 voire .40. De
plus, pour assurer une solution factorielle simple, il faut que chaque item sature de
façon claire sur un seul facteur.

Ici on observe que les items 1, 2 et 3 saturent sur le facteur PA1 mais pas sur le
facteur PA2 et les items 4, 5 et 6 saturent sur PA2 et pas sur PA1. On peut donc dire
que la solution factorielle est satisfaisante. Si un ou plusieurs items posent problème
8

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


(absence de saturation ou saturation sur plusieurs facteurs), il faudra exclure ces
items et reprendre l’analyse depuis le départ.

La facteur PA1 explique 37% de la variance et le facteur PA2 explique 35% de la


variance. Au total 72% de la variance est expliquée. Cette variance expliquée est
répartie entre le facteur 1 (52%) et le facteurs 2 (48%).

Les deux facteurs sont ici corrélés à r=.52, ce qui tend à valider rétrospectivement le
recours à la rotation oblimin.

d. Analyse de la consistance interne

Pour étudier la consistance interne d’un facteur, on peut utiliser la fonction alpha()
du package psych qui permet d’obtenir l’alpha de Cronbach, un indice
d’homogénéité.
Pour calculer cet indice, il faut appliquer la formule aux items retenus pour chaque
facteur.
Par exemple, pour connaître la consistance interne du facteur 2 on va appliquer la
formule aux items 4, 5 et 6

alpha(data[4 :6])

La cohérence interne du facteur PA2 est très satisfaisante (.84). On considère


généralement qu’un alpha est insuffisant lorsqu’il est inférieur à .60 voire .70.

9

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


On peut améliorer l’alpha en retirant certains items. Ici la valeur de l’alpha du facteur
PA2 serait légèrement améliorée (.92) en retirant l’item 6. Elle chuterait par contre à
.71 si l’on retirait l’item 4
La décision de retirer un item doit être prise uniquement lorsque l’alpha mérite d’être
amélioré, que l’amélioration obtenue apparaît suffisamment importante et que le
facteur dispose d’assez d’items (on ne réduit pas un facteur qui ne contient que 3
items)

3.2. Analyse Factorielle Confirmatoire - AFC

Rappel : l’Analyse Factorielle Confirmatoire permet de vérifier ou de confirmer une
structure plutôt que de la chercher sans a priori.
Elle vise à savoir si les données dont on dispose s’ajustent suffisamment au modèle
que structurel que l’on propose de vérifier.

Pour réaliser une AFC, il faut d’abord installer le package lavaan.


Il faudra ensuite spécifier la structure que l’on souhaite tester.

Pour cela créer un objet model<-‘ ’ au sein duquel on définira les facteurs.
Dans notre exemple, le facteur F1 qui est défini (=~ ) par les items 1, 2 et 3 et le
facteur F2 est défini (=~ ) par les items 4, 5 et 6 .

Indiquer également que les facteurs F1 et F2 sont corrélés entre eux (~~).
Pour définir le modèle, on changera de ligne (touche « entrée ») entre chaque
instruction et on terminera la dernière instruction par une apostrophe.

model<-'
F1=~item1+item2+item3
F2=~item4+item5+item6
F1~~F2'

Une fois que l’objet model a été crée, on créée un second objet que l’on appellera
fit<- avec la fonction cfa() du package lavaan.
Cela suppose donc d’installer ce package en amont et de le charger.
Dans cette fonction cfa() on indique dans un premier temps la structure du modèle
à tester (model), l’ensemble des données à utiliser (data=data) et la méthode
d’estimation selon que les données sont distribuées normalement
(estimator="ML") ou pas (estimator="WLS").
On indique également l’élimination des données manquantes
(missing= "listwise")

fit<-cfa(model,data=data, estimator="WLS", missing="listwise")

10

UE4 Méthodes 5 – méthode de l’enquête : le questionnaire

L3 Sciences de l’éducation

Enseignant : Nadia LEROY


On peut ensuite utiliser la fonction standardizedSolution() et enfin la fonction
fitMeasures() du package lavaan sur l’objet fit afin d’obtenir différents
indices d’ajustement du modèle

Ici on peut voir que les différents items saturent correctement (>.40) sur les facteurs
dont ils dépendent. L’item 6 présente la saturation la plus faible (.56).

Par ailleurs on peut constater que les facteurs F1 et F2 sont corrélés à .53.
Il convient également d’examiner les indices d’ajustement :
- Le Khi-deux : il doit être non-significatif. Dans le cas contraire, cela signifie
que le modèle spécifié s’ajuste mal aux données. Cet indicateur est considéré
comme peu fiable quand les données ne sont pas normalement distribuées et
que l’échantillon est important (> 200)
- Le RMSEA : il doit être <.06
- Le AGFI : doit être >.90
- Le SRMR : doit être <.08
- Le CFI : doit être >.90

11

Vous aimerez peut-être aussi