Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
Quelle analyse choisir ?
2 participants
Page 1 sur 1
Quelle analyse choisir ?
Bonjour à tous,
Je n'ai jamais mené d'ACM, et ma vision de la portée de cette technique s'arrête à ce que j'ai pu lire, en ligne et dans le livre "Analyses Factorielles Simples et Multiples", 4éme édition de Brigitte Escofier et Jérôme Pagès. J'ai déjà réalisé des ACP et employé quelques méthodes de classification au cours de mes études, mais je ne pourrais pas prétendre être suffisamment "fort" en analyses multivariées pour aboutir sur les étapes d'interprétation de mon ACM. Alors voilà, je viens lancer une petite bouteille a la mer, en fin de stage de M2 [en océanographie], il me reste du temps mais j'aimerais rendre quelque chose de bien, sinon juste !
Voici la position du problème :
Je possède des variables temporelles de vitesses de courant (en tout trois, à trois profondeurs => Surface / Intermédiaire / Fond), les directions y étant associées; un genre d'indice de marée, me permettant de séparer une période de marée montante d'une descendante; et une variable temporelle de vitesses du vent, ainsi que sa correspondance en direction. De nombreuses autres variables (telles que celles concernant la Houle (sa période, direction et hauteur significative), la quantité de matières en suspension (temporellement aussi), la pluviomètrie enregistrée, un indice de périodes de vives eaux / mortes eaux, etc...) sont aussi à ma disposition, mais je me cantonne aux cinq premières pour cette première ACM.
Travaillant sous R, j'ai mi en forme les données afin de pouvoir les travailler grâce au package ade4. En clair, j'ai généré deux formes pour cet ensemble de variables:
Dans l'un et l'autre des cas, mes individus sont les pas de temps (toutes les quinze minutes durant un mois), ils sont donc les lignes de mes tableaux; Mes variables sont telles que citées plus haut, chacune étant rendue qualitative par une séparation en classes;
Je cherche à expliciter le mouvement des courants au regard du vent et des marées. Ce qui ,théoriquement, constitue un phénomène normal dans le mouvement des masses d'eaux.
J'avais fait un premier test avec un grand nombre de classes, mais au vu des résultats et de la lecture du livre cité, j'ai bien vite compris que mes classes n'étaient pas correctement créées, certaines comportant un très petit nombre d'individus Donc, j'ai généré des classes pour chaque variable comprenant un nombre d'individus approximativement équivalent.
je sais déjà que la zone que j'étudie ne permet pas de décrire les courants uniquement par les deux grandes variables dont j'ai parlé plus haut, cependant elles ont un impact, et j'aimerais le discerner, car il apparaît sur les figures tirées de ce travail qu'il existe bel et bien.
J'aimerais aussi arriver à extraire une information sur la part que permettent d'expliquer les variables de vent et de marée quant à l'intensité et à la direction de mes courants; j'avais lu dans un mémoire de master (monsieur TAMTARE Tamkpanka, disponible en slides en cherchant "tamtare Tamkpanka courants grand popo" sur Google) que la régression linéaire multiple pouvait permettre ce genre de compréhension. Mais voilà, je tatonne, je cherche, j'ai -à vrai dire- pas exactement l'entourage adéquat pour valider les étapes de statistiques dans lesquelles je me lance, donc en tout ça fait de bonnes chances de se tromper, et ça serait dommage car j'y met du coeur
Donc, au final, avec les buts fixés, l'ACM ou la régression linéaire multiple sont-elles intéressantes ? Je joint une partie des données, suffisante pour les faire tournes sur R avec le package ade4 et la fonction dudi.acm
simplement avec les commandes : [je n'ai pas tout écrit de ce code ci!, légèrement modifié, et écourté]
Si l'un d'entre vous pense pouvoir m'aider un peu, ça serait une bonne chose ! Je continue néanmoins à lire, essayer d'appliquer, et rédiger
Merci d'avance !
Je n'ai jamais mené d'ACM, et ma vision de la portée de cette technique s'arrête à ce que j'ai pu lire, en ligne et dans le livre "Analyses Factorielles Simples et Multiples", 4éme édition de Brigitte Escofier et Jérôme Pagès. J'ai déjà réalisé des ACP et employé quelques méthodes de classification au cours de mes études, mais je ne pourrais pas prétendre être suffisamment "fort" en analyses multivariées pour aboutir sur les étapes d'interprétation de mon ACM. Alors voilà, je viens lancer une petite bouteille a la mer, en fin de stage de M2 [en océanographie], il me reste du temps mais j'aimerais rendre quelque chose de bien, sinon juste !
Voici la position du problème :
Je possède des variables temporelles de vitesses de courant (en tout trois, à trois profondeurs => Surface / Intermédiaire / Fond), les directions y étant associées; un genre d'indice de marée, me permettant de séparer une période de marée montante d'une descendante; et une variable temporelle de vitesses du vent, ainsi que sa correspondance en direction. De nombreuses autres variables (telles que celles concernant la Houle (sa période, direction et hauteur significative), la quantité de matières en suspension (temporellement aussi), la pluviomètrie enregistrée, un indice de périodes de vives eaux / mortes eaux, etc...) sont aussi à ma disposition, mais je me cantonne aux cinq premières pour cette première ACM.
Travaillant sous R, j'ai mi en forme les données afin de pouvoir les travailler grâce au package ade4. En clair, j'ai généré deux formes pour cet ensemble de variables:
- Un tableau disjonctif complet, en séparant chaque variable en classes
- Une matrice pour laquelle R peut interpréter chaque variable comme un facteur, chaque modalité étant contenue dans ce dernier
Dans l'un et l'autre des cas, mes individus sont les pas de temps (toutes les quinze minutes durant un mois), ils sont donc les lignes de mes tableaux; Mes variables sont telles que citées plus haut, chacune étant rendue qualitative par une séparation en classes;
Je cherche à expliciter le mouvement des courants au regard du vent et des marées. Ce qui ,théoriquement, constitue un phénomène normal dans le mouvement des masses d'eaux.
J'avais fait un premier test avec un grand nombre de classes, mais au vu des résultats et de la lecture du livre cité, j'ai bien vite compris que mes classes n'étaient pas correctement créées, certaines comportant un très petit nombre d'individus Donc, j'ai généré des classes pour chaque variable comprenant un nombre d'individus approximativement équivalent.
je sais déjà que la zone que j'étudie ne permet pas de décrire les courants uniquement par les deux grandes variables dont j'ai parlé plus haut, cependant elles ont un impact, et j'aimerais le discerner, car il apparaît sur les figures tirées de ce travail qu'il existe bel et bien.
J'aimerais aussi arriver à extraire une information sur la part que permettent d'expliquer les variables de vent et de marée quant à l'intensité et à la direction de mes courants; j'avais lu dans un mémoire de master (monsieur TAMTARE Tamkpanka, disponible en slides en cherchant "tamtare Tamkpanka courants grand popo" sur Google) que la régression linéaire multiple pouvait permettre ce genre de compréhension. Mais voilà, je tatonne, je cherche, j'ai -à vrai dire- pas exactement l'entourage adéquat pour valider les étapes de statistiques dans lesquelles je me lance, donc en tout ça fait de bonnes chances de se tromper, et ça serait dommage car j'y met du coeur
Donc, au final, avec les buts fixés, l'ACM ou la régression linéaire multiple sont-elles intéressantes ? Je joint une partie des données, suffisante pour les faire tournes sur R avec le package ade4 et la fonction dudi.acm
simplement avec les commandes : [je n'ai pas tout écrit de ce code ci!, légèrement modifié, et écourté]
- Code:
X=read.table(fichier txt importé)
X=DF_fact1[c(7,17,18,19,20)]
library(ade4)
for (j in 1:ncol(X)) X[,j]=as.factor(X[,j])
x11()
acm=dudi.acm(X, scann = TRUE)
contrib=round(100*acm$eig/sum(acm$eig))
#Axes 1 et 2
x11()
plot ( acm$co[,c(1,2)] ,
xlab=paste("Axe 1 - ",contrib[1]," %",sep=""),
ylab=paste("Axe 2 - ",contrib[2]," %",sep=""),
cex=acm$cw*length(acm$cw)*3)
text ( acm$co[,c(1,2)] , labels=rownames(acm$co) , cex=0.75 , pos=3,xpd=NA )
text ( acm$co[1:3,c(1,2)] , labels=rownames(acm$co)[1:3] , cex=0.75 , pos=3,xpd=NA,col="red" )
text ( acm$co[4:9,1:2] , labels=rownames(acm$co)[4:9] , cex=0.75 , pos=3,xpd=NA,col="blue" )
abline(h=0,v=0)
#axes 1 et 3
#Avec DF / Vent
x11()
plot ( acm$co[,c(1,3)] ,
xlab=paste("Axe 1 - ",contrib[1]," %",sep=""),
ylab=paste("Axe 3 - ",contrib[3]," %",sep=""),
cex=acm$cw*length(acm$cw)*3)
text ( acm$co[,c(1,3)] , labels=rownames(acm$co) , cex=0.75 , pos=3,xpd=NA )
text ( acm$co[1:3,c(1,3)] , labels=rownames(acm$co)[1:3] , cex=0.75 , pos=3,xpd=NA,col="red" )
text ( acm$co[4:9,c(1,3)] , labels=rownames(acm$co)[4:9] , cex=0.75 , pos=3,xpd=NA,col="blue" )
abline(h=0,v=0)
#axes 2 et 3
x11()
plot ( acm$co[,c(2,3)] ,
xlab=paste("Axe 2 - ",contrib[2]," %",sep=""),
ylab=paste("Axe 3 - ",contrib[3]," %",sep=""),
cex=acm$cw*length(acm$cw)*3)
text ( acm$co[,c(2,3)] , labels=rownames(acm$co) , cex=0.75 , pos=3,xpd=NA )
text ( acm$co[1:3,c(2,3)] , labels=rownames(acm$co)[1:3] , cex=0.75 , pos=3,xpd=NA,col="red" )
text ( acm$co[4:9,c(2,3)] , labels=rownames(acm$co)[4:9] , cex=0.75 , pos=3,xpd=NA,col="blue" )
abline(h=0,v=0)
inerties = inertia.dudi(acm, col=T, row=T )
nomfic="tab_contributions_et_cosinus_carres.txt"
contribution=round(100*inerties$col.abs/apply(inerties$col.abs,2,sum),1)
v=abs(inerties$col.rel[,1:acm$nf])
cosinus_carre=round(v/apply(v,1,sum),2)
M = matrix(0 , length(acm$cw) , 2+4*acm$nf )
for (i in 1:nrow(acm$co)) {
M[i,1] = round(100*acm$cw[i],2)
M[i,2] = round(sum(acm$l1[i,]^2),2)
for (j in 1:acm$nf) {
M[i,3+(j-1)*4] = round(acm$c1[i,j],2)
M[i,4+(j-1)*4] = contribution[i,j]
M[i,5+(j-1)*4] = cosinus_carre[i,j]
M[i,6+(j-1)*4] = sum(cosinus_carre[i,1:j])
}
}
D=data.frame(M)
rownames(D)=rownames(acm$co) ; colnames(D)[1:2]=c("poids rel.","CTR inertie")
for (j in 1:acm$nf) {
colnames(D)[3+(j-1)*4] = paste("axe ",j,sep="") ; colnames(D)[4+(j-1)*4] = "CTR"
colnames(D)[5+(j-1)*4] = "COS2" ; colnames(D)[6+(j-1)*4] = "QLT"
}
entete=matrix(c(" ",colnames(D)),1,ncol(D)+1)
write.table(entete,nomfic,sep="\t",quote=F,row.names=F,col.names=F)
write.table(D,nomfic,sep="\t",quote=F,row.names=T,col.names=F,append=T)
Si l'un d'entre vous pense pouvoir m'aider un peu, ça serait une bonne chose ! Je continue néanmoins à lire, essayer d'appliquer, et rédiger
Merci d'avance !
Seastem- Nombre de messages : 3
Date d'inscription : 15/06/2015
Re: Quelle analyse choisir ?
Salut,
C'est un très long message pour ne pas dire grand chose .
A priori, je vois mal l'ACM répondre à ce type de question mais sans un extrait des données j'ai toujours du mal à voir de quoi on parle.
Par ailleurs, donne nos uniquement le code qui se rapport à ta question car là tu nous noies sous une tonne d'info.
Précise bien tes questions et on devrait pouvoir t'éclairer efficacement
C'est un très long message pour ne pas dire grand chose .
A priori, je vois mal l'ACM répondre à ce type de question mais sans un extrait des données j'ai toujours du mal à voir de quoi on parle.
Par ailleurs, donne nos uniquement le code qui se rapport à ta question car là tu nous noies sous une tonne d'info.
Précise bien tes questions et on devrait pouvoir t'éclairer efficacement
Nik- Nombre de messages : 1606
Date d'inscription : 23/05/2008
Re: Quelle analyse choisir ?
Salut et désolé :/ !
Alors je vais essayer de faire concis je pensais avoir mi les données a disposition, mais en effet je ne les voit pas..!
mes questions :
Sachant que toutes mes variables sont quantitatives continues à l'exception des variables de "direction du courant, du vent et de la houle"; j'ai rendu l'ensemble des variables qualitatives en les classant.
Je vais essayer d'ajouter le "fichier txt" dont il est question dans le code [Qui contient une partie de mes données, mises sous forme de facteurs, comme les aime R pour l'ACM], ensuite le code ne sert qu'à obtenir ce que j'obtiens en ACM; Je tâtonne à l'analyse, et ne sais pas dire si c'est intéressant ou non.
Désolé du temps de réponse :/
Alors je vais essayer de faire concis je pensais avoir mi les données a disposition, mais en effet je ne les voit pas..!
mes questions :
- L'ACM est-elle suffisante pour faire ressortir le lien: "Courants" = "vents" + "marées" (+ potentiellement "houle") ? En théorie c'est comme ça que ça fonctionne, et je voudrais savoir si ça se vérifie sur mes données.
Sachant que toutes mes variables sont quantitatives continues à l'exception des variables de "direction du courant, du vent et de la houle"; j'ai rendu l'ensemble des variables qualitatives en les classant.
- En plus de ce lien, quelle part du courant peut être expliquée par chaque variable.
Je vais essayer d'ajouter le "fichier txt" dont il est question dans le code [Qui contient une partie de mes données, mises sous forme de facteurs, comme les aime R pour l'ACM], ensuite le code ne sert qu'à obtenir ce que j'obtiens en ACM; Je tâtonne à l'analyse, et ne sais pas dire si c'est intéressant ou non.
Désolé du temps de réponse :/
- Fichiers joints
Seastem- Nombre de messages : 3
Date d'inscription : 15/06/2015
Re: Quelle analyse choisir ?
J'ai relu ton premier message.
A priori, la première question qu'on se pose c'est : pourquoi vouloir vérifier une certitude ?
Il existe des codes de modèles numériques déterministes qui modélisent plutôt bien (tout dépend de la précision qu'on attend bien sûr) les courants (champs de vitesse). Les facteurs principaux y sont déjà fixés.
Si tu cherches une relation statistique (une corrélation), tu vas tomber dans bien d'autres considérations pour valider ton résultat que les simples phénomènes physiques à l'origine des courants.
Il existe des analyses permettant de coupler variables qualitatives et quantitatives.
Passons à ta question proprement dite. L'ACM va te dresser une typologie de tes pas de temps. Cette typologie ne tiendra pas compte de l'organisation temporelle de tes données. Si l'ACM est capable de reproduire des gradients non linéaire, je doute fort de son intérêt dans les données cycliques comme les courants de marée. En plus, pour tes variables quanti passées en quali, tu perds l'info de l'ordre des modalités dans une ACM. ça peut être gênant à mon avis pour toi. Enfin, l'ACM n'est pas une méthode prédictive, elle ne fait que décrire.
La manière dont tu écris "Courants" = "vents" + "marées" (+ potentiellement "houle"), fait clairement penser à un modèle (GLM sans doute).
Voilà ce que je peux te dire pour le moment.
A priori, la première question qu'on se pose c'est : pourquoi vouloir vérifier une certitude ?
Il existe des codes de modèles numériques déterministes qui modélisent plutôt bien (tout dépend de la précision qu'on attend bien sûr) les courants (champs de vitesse). Les facteurs principaux y sont déjà fixés.
Si tu cherches une relation statistique (une corrélation), tu vas tomber dans bien d'autres considérations pour valider ton résultat que les simples phénomènes physiques à l'origine des courants.
Pourquoi ? Tu as généré une information statistiquement très lourde à gérer et générant nécessairement une perte d'information voire un premier niveau d'interprétation de la donnée qui n'est pas le bon.Sachant que toutes mes variables sont quantitatives continues à l'exception des variables de "direction du courant, du vent et de la houle"; j'ai rendu l'ensemble des variables qualitatives en les classant.
Il existe des analyses permettant de coupler variables qualitatives et quantitatives.
Passons à ta question proprement dite. L'ACM va te dresser une typologie de tes pas de temps. Cette typologie ne tiendra pas compte de l'organisation temporelle de tes données. Si l'ACM est capable de reproduire des gradients non linéaire, je doute fort de son intérêt dans les données cycliques comme les courants de marée. En plus, pour tes variables quanti passées en quali, tu perds l'info de l'ordre des modalités dans une ACM. ça peut être gênant à mon avis pour toi. Enfin, l'ACM n'est pas une méthode prédictive, elle ne fait que décrire.
La manière dont tu écris "Courants" = "vents" + "marées" (+ potentiellement "houle"), fait clairement penser à un modèle (GLM sans doute).
Voilà ce que je peux te dire pour le moment.
Nik- Nombre de messages : 1606
Date d'inscription : 23/05/2008
Re: Quelle analyse choisir ?
Merci pour cette réponse
Alors alors, effectivement tout cela peut se modéliser, malheureusement les modèles dont tu parle ne marchent pas sous toutes les conditions, et c'est justement le cas du lagon de nouvelle calédonie, dans lequel la modélisation avance a pas de nain. Le principe de ce travail est d'une part de tester les certitudes (qui s'avèrent ne pas fonctionner dans ce cas précis) afin de déceler leur limite, et de déterminer lequel des forçages est prépondérant, et ce dans chaque zone d'étude, donc de dresser un genre de "typologie des forçages prépondérants", pour pouvoir, in fine, comprendre les points sur lesquels les modèles doivent être corrigés.
Le but de ma démarche de "statistique" revient "simplement" (et j'en convient, ce n'est pas simple) à tenter de déterminer :
- La part de chaque forçage dans l'apparition des courants
- de dresser une typologie des phénomènes observés
Car même si bon nombre de choses sont cycliques (les marées, les vives et mortes eaux.. etc), les épisodes de vent, les épisodes de pluies fortes ainsi que ceux de houle sont autant de facteurs rendant le phénomène global de courantologie pas uniquement cyclique, en tous cas dans une zone précise.
J'ai rendu l'ensemble qualitatif par méconnaissance des autres techniques, l'ACM étant ce qui se rapproche le plus de ce que je connais (AFC et ACP), donc tu penses qu'il seraît plus intéressant de tenter une autre méthode ?
Ce qui m'intéresse lorsque tu dis que l'ACM ne tient pas compte de l'ordre temporel de mes données, c'est justement que certains épisodes se reproduisent de manière assez anarchique, (par exemple une direction de vent particulière avec une marée montante générera des courants orientés vers la côte, ce qui arrive uniquement dans ces conditions précises), et ces épisodes m'intéressent aussi, sans aucunes chance d'être cycliques..
Finalement, penses tu que je devrais essayer une analyse différente ? Ce qui est sûr, c'est que je peux réaliser une méthode prenant des variables toutes quantitatives lorsque je traite les vitesses, ce qui est par contre plus embétant, c'est que tout ce qui se réfère aux directions ne peut pas être traité quantitativement (le 0 n'à pas plus de valeur que le 120, ni que le 360, qui vaut lui même 0.. Argh). Bien évidemment, je ne suis pas un professionnel des statistiques, le tout est de remplir les points importants d'un stage, et donc de réaliser quelquechose vis à vis de mes données.
Je me perds; Donc..
Y'a t-il un moyen d'arriver a obtenir une typologie des différents épisodes que je rencontre sur ma période ?
Y'a t-il un moyen de discerner la part de chaque forçage au courant résultant ?
Malheureusement, les courants et ce qui peut les générer n'est pas simple, c'est pourquoi les équations de navier stokes ne sont toujours pas résolues..
C'est là dessus que j'essaie de faire mon chemin Je n'ai pas une formation de statisticien, on en a fait un peu, mais c'est certain que ça ne suffit pas pour s'attaquer à ce genre de problématiques.. J'aimerais quand même essayer, même si ce n'est pas brillantissime, je me dis que ça sera un premier pas dedans, et quoi de mieux qu'un stage pour s'y attaquer ! Merci encore pour ta réponse
Alors alors, effectivement tout cela peut se modéliser, malheureusement les modèles dont tu parle ne marchent pas sous toutes les conditions, et c'est justement le cas du lagon de nouvelle calédonie, dans lequel la modélisation avance a pas de nain. Le principe de ce travail est d'une part de tester les certitudes (qui s'avèrent ne pas fonctionner dans ce cas précis) afin de déceler leur limite, et de déterminer lequel des forçages est prépondérant, et ce dans chaque zone d'étude, donc de dresser un genre de "typologie des forçages prépondérants", pour pouvoir, in fine, comprendre les points sur lesquels les modèles doivent être corrigés.
Le but de ma démarche de "statistique" revient "simplement" (et j'en convient, ce n'est pas simple) à tenter de déterminer :
- La part de chaque forçage dans l'apparition des courants
- de dresser une typologie des phénomènes observés
Car même si bon nombre de choses sont cycliques (les marées, les vives et mortes eaux.. etc), les épisodes de vent, les épisodes de pluies fortes ainsi que ceux de houle sont autant de facteurs rendant le phénomène global de courantologie pas uniquement cyclique, en tous cas dans une zone précise.
J'ai rendu l'ensemble qualitatif par méconnaissance des autres techniques, l'ACM étant ce qui se rapproche le plus de ce que je connais (AFC et ACP), donc tu penses qu'il seraît plus intéressant de tenter une autre méthode ?
Ce qui m'intéresse lorsque tu dis que l'ACM ne tient pas compte de l'ordre temporel de mes données, c'est justement que certains épisodes se reproduisent de manière assez anarchique, (par exemple une direction de vent particulière avec une marée montante générera des courants orientés vers la côte, ce qui arrive uniquement dans ces conditions précises), et ces épisodes m'intéressent aussi, sans aucunes chance d'être cycliques..
Finalement, penses tu que je devrais essayer une analyse différente ? Ce qui est sûr, c'est que je peux réaliser une méthode prenant des variables toutes quantitatives lorsque je traite les vitesses, ce qui est par contre plus embétant, c'est que tout ce qui se réfère aux directions ne peut pas être traité quantitativement (le 0 n'à pas plus de valeur que le 120, ni que le 360, qui vaut lui même 0.. Argh). Bien évidemment, je ne suis pas un professionnel des statistiques, le tout est de remplir les points importants d'un stage, et donc de réaliser quelquechose vis à vis de mes données.
Je me perds; Donc..
Y'a t-il un moyen d'arriver a obtenir une typologie des différents épisodes que je rencontre sur ma période ?
Y'a t-il un moyen de discerner la part de chaque forçage au courant résultant ?
Malheureusement, les courants et ce qui peut les générer n'est pas simple, c'est pourquoi les équations de navier stokes ne sont toujours pas résolues..
C'est là dessus que j'essaie de faire mon chemin Je n'ai pas une formation de statisticien, on en a fait un peu, mais c'est certain que ça ne suffit pas pour s'attaquer à ce genre de problématiques.. J'aimerais quand même essayer, même si ce n'est pas brillantissime, je me dis que ça sera un premier pas dedans, et quoi de mieux qu'un stage pour s'y attaquer ! Merci encore pour ta réponse
Seastem- Nombre de messages : 3
Date d'inscription : 15/06/2015
Sujets similaires
» Quelle ANOVA choisir?
» Quelle méthode d'analyse choisir ?
» ACP à variables log transformées, quelle matrice choisir?
» SVP c'est Urgent ! Quelle méthode d'analyse choisir ?
» Quelle formule choisir ? Loi Normale - incertitude sur mu
» Quelle méthode d'analyse choisir ?
» ACP à variables log transformées, quelle matrice choisir?
» SVP c'est Urgent ! Quelle méthode d'analyse choisir ?
» Quelle formule choisir ? Loi Normale - incertitude sur mu
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum