Analyse en composantes principales : Accident vasculaire cérébral et ses conséquences
Aujourd’hui, l’Homme vit dans un monde où règne un rythme très accéléré avec beaucoup de fatigue et efforts physique et mental. C’est pourquoi on entend souvent des cas d’accidents vasculaires-cérébraux qui est une perte soudaine de la fonction du cerveau. Donc on a pris, à partir d’un hôpital des données des patients qui ont récemment subi un accident vasculaire cérébral résultant dans l’hémiplégie ( paralysie d’une ou plusieurs parties du corps d’un seul côté) durable au moins 24 heures. Il s’agit de comparer les 3 outils d’évaluations pour évaluer le rétablissement des patients :
1-Formulaire de Goteburg: évaluation de l’hémiplegie en mesurant la fonction motrice, les qualités sensorielles, la mobilité passive.
2-Formulaire de Bobath : évaluation des réactions posturales, mouvement volontaire, équilibre et réactions de protections automatiques.
3-Indice de Barthel et notation de Kenny : évaluation de la capacité de mener des activités de la vie quotidienne.
Suivre l’état des patients suite à un accident vasculaire cérébral et comparaison des outils d’évaluation pour évaluer leur rétablissement.
on a une base de données de
-20 patients ( les individus)
-2 varibales qualitatives:
Sex
Side : Côté du cerveau touché
-12 variables quantitatives :
Age
Lapse: nombre de semaine
Arms : Bras et la fonction motrice de l’épaule
Legs : fonction motrice des membres inférieurs
Hands : fonction motrice de la main
Balance: équilibre
Sensation
JointPain : Liberté de douleurs articulaires
jointmotion : Mouvement de l’articulation passive
Bobath
Barthel
Kenny: score de Kenn
data=read.table(file=file.choose(),header=T,sep=";",row.names = 1)
attach(data)
nrow(data)
## [1] 20
ncol(data)
## [1] 14
str(data)
## 'data.frame': 20 obs. of 14 variables:
## $ Sex : Factor w/ 2 levels "femme","homme": 2 2 1 1 2 1 1 1 1 2 ...
## $ Side : Factor w/ 2 levels "droit","gauche": 2 2 2 1 2 1 1 2 2 1 ...
## $ Age : int 59 64 66 57 59 67 23 63 76 84 ...
## $ Lapse : int 14 2 39 22 41 35 6 12 156 36 ...
## $ Arms : int 9 5 36 36 32 22 14 36 20 36 ...
## $ Legs : int 30 11 30 20 30 30 30 22 18 20 ...
## $ Hands : int 2 0 23 14 6 9 2 21 3 24 ...
## $ Balance : int 12 1 14 14 6 14 13 3 9 9 ...
## $ Sensation : int 24 6 24 14 24 24 24 24 24 24 ...
## $ JointPain : int 24 24 24 24 24 21 24 24 24 24 ...
## $ JointMotion: int 24 24 24 12 17 24 22 24 24 24 ...
## $ Bobath : int 49 17 112 79 51 52 41 148 43 226 ...
## $ Barthel : int 90 35 90 85 80 70 70 30 65 70 ...
## $ Kenny : num 22 11 23 22.2 20.4 19.7 17.9 4.9 18.4 19.1 ...
head(data)
## Sex Side Age Lapse Arms Legs Hands Balance Sensation JointPain
## barry homme gauche 59 14 9 30 2 12 24 24
## padriac homme gauche 64 2 5 11 0 1 6 24
## Narelle femme gauche 66 39 36 30 23 14 24 24
## Jaklin femme droit 57 22 36 20 14 14 14 24
## rachael homme gauche 59 41 32 30 6 6 24 24
## sabelle femme droit 67 35 22 30 9 14 24 21
## JointMotion Bobath Barthel Kenny
## barry 24 49 90 22.0
## padriac 24 17 35 11.0
## Narelle 24 112 90 23.0
## Jaklin 12 79 85 22.2
## rachael 17 51 80 20.4
## sabelle 24 52 70 19.7
Vu la nature de la base , on emploie la méthode d’analyse en composantes principales en considérant les 2 premières variables comme varibales qualitatives supplémentaires et le reste des vavribles comme des variables actives
L’éblouis des valeurs propres nous permet d’étudier l’inertie des composantes principales. Le diagramme des valeurs propres suggère que les deux premières dimensions de l’ACP résument bien l’ensemble des 14 variables. Plus précisément, on peut voir ( tableau ci-dessous) que les pourcentages d’inertie associés aux deux premières dimensions valent respectivement 40.6 % et 17.2 %. Le plan principal de l’ACP permet donc de récupérer 57.8% de l’information contenue dans les 14 variables initiales. (Meme la 3ème et 4ème composantes comptent pour la représentaion puisqu’ils ont une variance supérieure à 1 )
library(FactoMineR)
res.pca=PCA(data,quali.sup =1:2,graph =F)
res.pca$eig
## eigenvalue percentage of variance
## comp 1 4.87058759 40.58822993
## comp 2 2.06115686 17.17630718
## comp 3 1.32054320 11.00452668
## comp 4 1.25224663 10.43538855
## comp 5 0.97823264 8.15193871
## comp 6 0.66474704 5.53955868
## comp 7 0.33081841 2.75682005
## comp 8 0.24170683 2.01422361
## comp 9 0.14837585 1.23646539
## comp 10 0.09124176 0.76034804
## comp 11 0.03024820 0.25206830
## comp 12 0.01009499 0.08412489
## cumulative percentage of variance
## comp 1 40.58823
## comp 2 57.76454
## comp 3 68.76906
## comp 4 79.20445
## comp 5 87.35639
## comp 6 92.89595
## comp 7 95.65277
## comp 8 97.66699
## comp 9 98.90346
## comp 10 99.66381
## comp 11 99.91588
## comp 12 100.00000
library(ggplot2)
library(grid)
library(factoextra)
fviz_screeplot(res.pca)
fviz_pca_var(res.pca,col.var="cos2")+scale_color_gradient2(low="green",mid="blue",high="red",midpoint=0.4)
En regardant le cercle de corrélation on remarque que certaines variables sont fortemenet correlées telles que les variables (Kenny , Barthel et Balance ), (Bobath hands et Arms) , (Age et joinMotion) il y a des variables qui ne sont pas correlées telles que les variables Bobath et kenny , age et legs . De plus on remarque des variables qui sont mal representées ( en vert) telles que Lapse , Sensation et JoinPain.
res.pca$var$cor[,1:2]
## Dim.1 Dim.2
## Age -0.10004580 0.69457079
## Lapse 0.19353881 -0.23343599
## Arms 0.85053615 0.35407697
## Legs 0.77917389 -0.21437328
## Hands 0.76508106 0.55848533
## Balance 0.84078194 -0.36274136
## Sensation 0.17566595 0.05044984
## JointPain -0.06024594 0.28315145
## JointMotion -0.24536789 0.48399660
## Bobath 0.67733861 0.67587994
## Barthel 0.91875416 -0.26108629
## Kenny 0.89595974 -0.25974982
La matrice de corrélations montre que arms , legs , balance ,Barbeth , kenny sont très bien corrolées avec le 1er axe , et que les variables age et Bobath sont bien corrélées avec le second axe.
R <- cor(data[,-c(1,2)])
library(corrplot)
corrplot(R,method="number",type="upper")
On remarque que arms et hands sont très bien corrélées (0.9), hands et Barthel (0.87), Balance et kenny (0.86) , barthel et Kenny ( 0,98) => Une forte liaison lie ces 5 variables et elles sont elles memes qui sont corrélees avec le 1er axe .
res.pca$var$contrib[,1:2]
## Dim.1 Dim.2
## Age 0.20550213 23.4057193
## Lapse 0.76905034 2.6437755
## Arms 14.85265866 6.0825307
## Legs 12.46486067 2.2296169
## Hands 12.01803710 15.1325630
## Balance 14.51394233 6.3838565
## Sensation 0.63356884 0.1234834
## JointPain 0.07452024 3.8897935
## JointMotion 1.23610140 11.3651082
## Bobath 9.41955320 22.1629758
## Barthel 17.33074688 3.3071743
## Kenny 16.48145821 3.2734029
sur le 1er axe :
le 1er axe est formé principalement par le variable d’évaluation Barthel(17.33%) et kenny (16.48 %), Arms(14.85%) , Balance (14.51%) , Legs(12.46 %) , Hands (12.02 %) .. Donc le premier axe est l’axe qui nous renseigne sur la fonction motrice des membres inférieurs , des bras et de l’épaule , sur l’équilibre et les relations de protection automatiques et sur la capacité de mener des acitivités de la vie quotidienne. On peut appeler cet axe l’axe de la fonctionnalité du corps aprés accident vasculaire cérébral ou l’axe des tests d’évaluation de rétablissement.
rev(sort(round(res.pca$var$contrib[,1],digits = 2)))
## Barthel Kenny Arms Balance Legs Hands
## 17.33 16.48 14.85 14.51 12.46 12.02
## Bobath JointMotion Lapse Sensation Age JointPain
## 9.42 1.24 0.77 0.63 0.21 0.07
fviz_pca_contrib(res.pca, choice = "var", axes = 1)
sur le 2ème axe:
le 2ème axe est principalement formé par la variable “age” (23.41%) , “Bobath” (22.16%) , “Hands”(15.13%) et “JoinMotion” (11.37%) . cet axe lie l’age avec le test d’évalution du mouvement volontaire qui englobe naturellement la foncion motrice des mains et le mouvement de l’articulation passive . C’est l’axe de l’age.
rev(sort(round(res.pca$var$contrib[,2],digits = 2)))
## Age Bobath Hands JointMotion Balance Arms
## 23.41 22.16 15.13 11.37 6.38 6.08
## JointPain Barthel Kenny Lapse Legs Sensation
## 3.89 3.31 3.27 2.64 2.23 0.12
fviz_pca_contrib(res.pca, choice = "var", axes = 2)
fviz_pca_ind(res.pca,geom=c("point","text"),col.ind="cos2")+scale_color_gradient2(low='green',mid='red',high='blue',midpoint=0.4)
D’après le graphe des individus, on remarque que quelques patients présentent une particularité par rapport aux autres patients
-Une meilleure représentation qui met en evidence la 1ère variable qualitative supplémentaire : sex
fviz_pca_ind(res.pca, habillage=1,label=T,addEllipses=TRUE, ellipse.level=0.95, alpha.ind=0.5)+theme_gray()
On remarque que les femmes ne diffèrent pas beaucoup des hommes , on ne peut faire une classification par sexe .
-une autre qui met en evidence la 2ème varible quali.sup : Side
fviz_pca_ind(res.pca, habillage=2,label=T,addEllipses=TRUE, ellipse.level=0.95, alpha.ind=0.5)+theme_gray()
Par contre on remarque en regardant ce graphique qu’on peut faire une classification suivant la varibale “Side” qui veut dire le coté qui a été touché par l’accident vasculaire cérébral. On remarque que l’ellipse qui présente le coté gauche est contenu dans l’ellipse qui présente le coté droit , ceci veut dire que la plupart des patients ont le coté gauche touché ou bien les deux cotés touchés. Les patients ayant le coté gauche du cerveau touché différent de ceux ayant le coté droit touché avec des réactions posturales, mouvement volontaire, équilibre et réactions de protections automatiques moins importanats , ils sont plus endommagés et généralment ils sont les plus agés et ont un mouvement de l’articulation plus passive .
plotellipses(res.pca)
sur le premier axe :
Les patients qui contribuent le plus à la formation de premier axe sont Walker(20.41), Ian (13.46) , Raena (10.75) ,padric (9.70), bam(9.28), mabel (7.51) , Narelle (7.1) .. La projection des individus sur le premier axe montre que Verad Narella Bam ont eu un bon résultat dans les tests alors que Walker Raena Mabil Padriac Lan ont un mauvais résultat dans les tests et l’accident vasculaire cérébral avait des conséquences dangereuses provoquant les réactions et les mouvements de protection automatiques ainsi que la capacité de mener des activités de la vie quotidienne.
rev(sort(round(res.pca$ind$contrib[,1],digits = 2)))
## walker Ian raena padriac bam mabel Narelle Varad Jaklin
## 20.41 13.46 10.75 9.70 9.28 7.51 7.10 6.00 4.13
## Pacific kaden laim sabelle rachael Abbas barry elena paola
## 3.40 2.67 1.57 1.31 1.04 0.46 0.40 0.37 0.23
## eden Dania
## 0.22 0.00
fviz_pca_contrib(res.pca, choice = "ind", axes = 1)
sur le 2ème axe:
Les patients qui contribuent le plus à la formation du 2ème axe sont Eden (21.18%) , Pacific (10.08) ,Jaklin (9.81) ,Paola (9.79) , Kaden (8.86) , Elena (7.01) , Barry , Isabelle et Rachael . La projection sur l’axe 2 donne que Pacific a un age important alors que Eden est une jeune fille, aussi on trouve que Barry,Rachael,Jaklin et Eden ont un résultat faible en Barthel et Kenny.
rev(sort(round(res.pca$ind$contrib[,2],digits = 2)))
## eden Pacific Jaklin paola kaden elena barry sabelle rachael
## 21.18 10.08 9.81 9.79 8.86 7.01 6.95 6.67 6.05
## laim Dania Varad walker bam Abbas raena padriac Ian
## 5.26 2.03 1.65 1.52 1.44 0.96 0.39 0.18 0.15
## mabel Narelle
## 0.02 0.00
fviz_pca_contrib(res.pca, choice = "ind", axes = 2)
fviz_pca_biplot(res.pca, geom=c("text","point"))+ theme_grey()
Ce biplot confirme ce qui est déja dit .
Ainsi, on a pu synthétiser l’information relative à 20 patients sur un plan factoriel de dimension 2. On en retire que : l’accident vasculaire cérébral influence beaucoup sur les fonctions motrices, les qualités sensorielles,les réactions de protections et la capacité de mener des activités normales et ils touchent ceux qui sont le plus agés. Enfin l’AVC a des conséquences graves sur la stabilisation et l’équilibre de l’etre humain .