Malo CLÉMENT & Théo GOUBEAU

doubs_env <- read.table("doubs_env.txt", header = TRUE)

Séance 1 - Étude des données environnementales par regroupement

1 - Nature des données et objectifs.

Rappelez la nature des données en présence. Quelles analyses multivariées pourraient être réalisées, pour atteindre quel objectif ?

Les données utilisées proviennent du fichier “doubs_env.txt”. Elles décrivent les caractéristiques physico-chimiques et topographiques de 30 sites de mesure le lond du Doubs. On retrouve ci-dessous les diagrammes de boites à moustache des différentes variables de la table “doubs_env” :

par(mfrow = c(1,2))
boxplot(doubs_env$dfs, range = 1, col = "forestgreen", xlab = "dfs")
boxplot(doubs_env$ele, range = 1, col = "darkorange", xlab = "ele")

boxplot(doubs_env$slo, range = 1, col = "yellow", xlab = "slo")
boxplot(doubs_env$dis, range = 1, col = "purple", xlab = "dis")

boxplot(doubs_env$pH, range = 1, col = "cyan", xlab = "pH")
boxplot(doubs_env$har, range = 1, col = "darkcyan", xlab = "har")

boxplot(doubs_env$pho, range = 1, col = "brown", xlab = "pho")
boxplot(doubs_env$nit, range = 1, col = "darkred", xlab = "nit")

boxplot(doubs_env$amm, range = 1, col = "coral4", xlab = "amm")
boxplot(doubs_env$oxy, range = 1, col = "cornflowerblue", xlab = "oxy")

boxplot(doubs_env$bod, range = 1, col = "darkorchid4", xlab = "bod")

On a alors 11 variables quantitatives continues (distance à la source, altitude, pente, débit, pH, dureté, phosphates, nitrates, ammonium, oxygène dissous et DBO5).
On peut ainsi réaliser des classifications pour regrouper les sites ayant des des caractéristiques similaires.
Aisni, l’objectif est d’identifier les typologies de sites afin de comprendre l’organisation spatiale des variables environnementales. On peut donc utiliser des analyses multivariées telles que le CAH, k-means.

2 - Validation préliminaire et visualisation.

Proposez une validation préliminaire des données, ainsi qu’une première visualisation

par(mfrow = c(1,1))
#on peut résumer doubs_env avec différentes commandes : 
summary(doubs_env)
##       dfs              ele             slo              dis       
##  Min.   :  0.30   Min.   :172.0   Min.   : 0.200   Min.   : 0.84  
##  1st Qu.: 54.45   1st Qu.:248.0   1st Qu.: 0.525   1st Qu.: 4.20  
##  Median :175.20   Median :395.0   Median : 1.200   Median :22.10  
##  Mean   :188.23   Mean   :481.6   Mean   : 3.497   Mean   :22.20  
##  3rd Qu.:301.73   3rd Qu.:782.0   3rd Qu.: 2.875   3rd Qu.:28.57  
##  Max.   :453.00   Max.   :934.0   Max.   :48.000   Max.   :69.00  
##        pH             har              pho              nit       
##  Min.   :7.700   Min.   : 40.00   Min.   :0.0100   Min.   :0.150  
##  1st Qu.:7.925   1st Qu.: 84.25   1st Qu.:0.1250   1st Qu.:0.505  
##  Median :8.000   Median : 89.00   Median :0.2850   Median :1.600  
##  Mean   :8.050   Mean   : 86.10   Mean   :0.5577   Mean   :1.654  
##  3rd Qu.:8.100   3rd Qu.: 96.75   3rd Qu.:0.5600   3rd Qu.:2.425  
##  Max.   :8.600   Max.   :110.00   Max.   :4.2200   Max.   :6.200  
##       amm              oxy              bod        
##  Min.   :0.0000   Min.   : 4.100   Min.   : 1.300  
##  1st Qu.:0.0000   1st Qu.: 8.025   1st Qu.: 2.725  
##  Median :0.1000   Median :10.200   Median : 4.150  
##  Mean   :0.2093   Mean   : 9.390   Mean   : 5.117  
##  3rd Qu.:0.2000   3rd Qu.:10.900   3rd Qu.: 5.275  
##  Max.   :1.8000   Max.   :12.400   Max.   :16.700
#toutes les variables 
plot(doubs_env)

#ou individuellement
plot(doubs_env$ele)

Cette visualisation ne permet pas de grandes analyses (on ne voit pas beaucoup de détails sur le résultats “plot(doubs_env)”) mais on peut tout de même remarquer quelques corrélations ou décorrélations (par exemple on peu remarquer que la distance à la source et l’altitude sont décorélées). De plus, on voit la grande disparité d’ordre de grandeurs des variables (déjà visibles sur les boites à moustaches). Aisni, cela impose un “centrage réduction”.

3 - Plan d’analyse des données

Etablissez un plan d’analyse de données, en précisant notamment la (les) question(s) posée(s), les différentes étapes de la démarche et le protocole à suivre pour interpréter les classifications

On doit donc suivre le plan suiviant : - il faut centrer - réduire les données.
- réaliser une classification ascendante hiérarchique (CAH), il faut penser à utiliser la distance euclidienne pour la méthode de Ward. - choix du nombre de classes (de dimensions). - méthode des k-means.
- caractérisation des groupes par les moyennes des variables.

4 - Étude par Classification Ascendante Hiérarchique (CAH)
distances <- dist(doubs_env, method = "euclidean")
dendro <- hclust(distances, method = "ward.D2")
plot(dendro, hang = -1)
classes.cah <- cutree(dendro, k = 2)
rect.hclust(dendro, k = 3,  border = "darkcyan")

doubs_env.cluster <- data.frame(classes.cah, doubs_env)
compoCluster <- aggregate(doubs_env.cluster[,2:length(doubs_env.cluster)], by = list(doubs_env.cluster$classes.cah), mean)
compoCluster

Ainsi, le CAH permet de voir la structure hiérarchique. D’après les résulats, on doit prendre alors un “découpage” en ” dimensions.
On a notamment le groupe “amont” et le groupe “pollué”. Le premier présente des sites à haute altitude, forte pente, eau bien oxygénée et faible teneur en nutriments. Le second présente des sites présentant des pics d’ammonium (amm), de phosphates (pho) et une forte DBO5 (bod), souvent liés à des rejets anthropiques.

5 - Étude par méthode des k-means
classes.kmean <- kmeans(doubs_env, centers=2)
classes.kmean$centers
##       dfs   ele   slo    dis   pH  har   pho    nit   amm  oxy  bod
## 1  34.050 833.1 8.360  3.177 8.01 70.7 0.139 0.3630 0.060 9.75 4.07
## 2 265.325 305.8 1.065 31.713 8.07 93.8 0.767 2.2995 0.284 9.21 5.64

Les k-means confirment généralement les résultats de la CAH, bien que certains sites “frontières” puissent changer de groupe. La variable nit (nitrates) et oxy (oxygène) sont souvent discriminantes pour expliquer les différences entre les groupes amont/aval ou les zones d’eutrophisation.

6 - Synthèse et limites.

Formulez une synthèse de cette analyse par regroupement ; pointez ses limites éventuelles et proposez des pistes d’amélioration

L’analyse par regroupement a permis de segmenter la rivière en zones homogènes (amont préservé, zone de transition, aval plus chargé en nutriments). Limites : le choix du nombre de classes reste subjectif malgré les critères d’inertie. De plus, ces méthodes sont sensibles aux valeurs extrêmes. Pistes d’amélioration : réaliser une ACP en amont pour visualiser les sites dans le plan factoriel et superposer les clusters pour mieux interpréter leur proximité spatiale.

Séance 5 - Analayse multivariée des données piscicoles.

doubs_pisc <- read.table("doubs_pisc.txt", header = TRUE)
1 - Rappelez la nature des données en présence ; quelles analyses pourrait-on réaliser, avec quel objectif ?
#nature du fichier
class(doubs_pisc)
## [1] "data.frame"
#nature des données dans le fichier 
summary (doubs_pisc)
##    famille            longueur         longueurMax        facteurForme      
##  Length:27          Length:27          Length:27          Length:27         
##  Class :character   Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character   Mode  :character  
##  niveauTrophique   
##  Length:27         
##  Class :character  
##  Mode  :character
#ou encore pour plus de rapidité
sapply(doubs_pisc[sapply(doubs_pisc, is.character)], class)
##         famille        longueur     longueurMax    facteurForme niveauTrophique 
##     "character"     "character"     "character"     "character"     "character"

Les données doubs_pisc.txt présentent les abondances (ou présences/absences transformées en classes) de différentes espèces de poissons sur les 30 sites de la rivière.

Nature des données : Il s’agit de variables qualitatives (ou quantitatives discrétisées). On y trouve des informations sur les familles et les longueurs des individus.

Objectif : L’analyse bivariée (deux par deux) étant limitée pour comprendre un écosystème complexe, nous utilisons une Analyse des Correspondances Multiples (ACM). L’objectif est d’identifier des structures de corrélation entre les espèces, de définir des profils de sites (typologies piscicoles) et d’étudier l’évolution de la biodiversité le long du gradient de la rivière.

2 - Proposez une validation préliminaire des données ainsi qu’une première visualisaiton.
library(ade4)
summary(doubs_pisc$famille)
##    Length     Class      Mode 
##        27 character character
summary(doubs_pisc$longueur)
##    Length     Class      Mode 
##        27 character character
#on n'affichera pas le résultat de cette commande pour cause de lisibilité
doubs_pisc.disjonct <- acm.disjonctif(doubs_pisc)
doubs_pisc.disjonct

On vérifie qu’il n’y a pas de données manquantes :

length(which(is.na(doubs_pisc)))
## [1] 0

L’utilisation de acm.disjonctif permet de transformer le tableau en une matrice binaire (0/1) où chaque colonne représente une modalité. Cela montre la structure éclatée que l’ACM va traiter pour calculer les proximités entre sites et espèces.

3 - Établissez un plan d’analyse de données, en précisant notamment la (les) question(s) posée(s), les différentes étapes de la démarche et le protocole à suivre pour interpréter l’analyse.

On commence par le choix des axes. Comme indiqué en cours, dans le cas de l’ACM, la valeur de l’inertie est peu pertinente pour l’interprétation des axes à retenir. Il faut passer par la “correction de Benzecri” qui distribue l’inertie dans un nombre plus restreint d’axes. On retient alors, pour l’interprétation, les axes propres (otenus par la commande “doubs_pisc.mca$eig”) qui expliquent entre 60% et 80% de la variance corrigée. Cette correction intervient uniquement pour le choix des axes ; la suite des calculs se fait à l’aide des valeurs propres initialement calculées par l’ACM.

library(FactoMineR)
doubs_pisc.acm <- MCA(doubs_pisc)

doubs_pisc.acm
summary(doubs_pisc.acm)
## 
## Call:
## MCA(X = doubs_pisc) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6   Dim.7
## Variance               0.721   0.650   0.457   0.334   0.289   0.253   0.200
## % of var.             18.978  17.095  12.027   8.783   7.609   6.665   5.263
## Cumulative % of var.  18.978  36.073  48.101  56.884  64.493  71.158  76.421
##                        Dim.8   Dim.9  Dim.10  Dim.11  Dim.12  Dim.13  Dim.14
## Variance               0.200   0.191   0.158   0.129   0.107   0.049   0.031
## % of var.              5.263   5.029   4.149   3.402   2.809   1.302   0.815
## Cumulative % of var.  81.684  86.713  90.862  94.264  97.072  98.374  99.189
##                       Dim.15  Dim.16  Dim.17  Dim.18  Dim.19
## Variance               0.021   0.010   0.000   0.000   0.000
## % of var.              0.550   0.260   0.000   0.000   0.000
## Cumulative % of var.  99.740 100.000 100.000 100.000 100.000
## 
## Individuals (the 10 first)
##                  Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## Cogo          | -0.164  0.138  0.005 | -0.466  1.236  0.037 |  0.881  6.288
## Satr          | -0.284  0.415  0.016 |  0.724  2.987  0.106 | -0.544  2.402
## Phph          | -0.163  0.136  0.038 | -0.393  0.880  0.219 |  0.418  1.418
## Babl          | -0.164  0.138  0.005 | -0.466  1.236  0.037 |  0.881  6.288
## Thth          | -0.091  0.043  0.002 | -0.160  0.145  0.007 | -0.898  6.540
## Teso          | -0.163  0.136  0.038 | -0.393  0.880  0.219 |  0.418  1.418
## Chna          | -0.156  0.124  0.004 | -0.323  0.595  0.015 | -1.467 17.447
## Pato          | -0.180  0.166  0.026 | -0.340  0.659  0.093 |  0.276  0.617
## Lele          | -0.135  0.093  0.013 | -0.338  0.652  0.082 | -0.277  0.624
## Sqce          | -0.084  0.036  0.006 | -0.317  0.573  0.092 | -0.660  3.527
##                 cos2  
## Cogo           0.134 |
## Satr           0.060 |
## Phph           0.249 |
## Babl           0.134 |
## Thth           0.232 |
## Teso           0.249 |
## Chna           0.316 |
## Pato           0.061 |
## Lele           0.055 |
## Sqce           0.398 |
## 
## Categories (the 10 first)
##                  Dim.1    ctr   cos2 v.test    Dim.2    ctr   cos2 v.test  
## Anguillidae   | -1.094  1.229  0.046 -1.094 |  4.490 22.988  0.775  4.490 |
## Centrarchidae | -0.334  0.115  0.004 -0.334 |  0.245  0.068  0.002  0.245 |
## Cottidae      | -0.193  0.038  0.001 -0.193 | -0.578  0.381  0.013 -0.578 |
## Cyprinidae    | -0.189  0.622  0.061 -1.254 | -0.284  1.568  0.137 -1.891 |
## Esocidae      |  4.880 24.461  0.916  4.880 |  0.980  1.096  0.037  0.980 |
## Ictaluridae   | -0.334  0.115  0.004 -0.334 |  0.245  0.068  0.002  0.245 |
## Nemacheilidae | -0.193  0.038  0.001 -0.193 | -0.578  0.381  0.013 -0.578 |
## Percidae      |  0.459  0.433  0.017  0.662 | -0.335  0.256  0.009 -0.483 |
## Salmonidae    | -0.221  0.100  0.004 -0.319 |  0.350  0.279  0.010  0.505 |
## court         | -0.194  0.578  0.047 -1.104 | -0.385  2.534  0.185 -2.194 |
##                Dim.3    ctr   cos2 v.test  
## Anguillidae    0.225  0.082  0.002  0.225 |
## Centrarchidae  1.926  6.013  0.143  1.926 |
## Cottidae       1.303  2.751  0.065  1.303 |
## Cyprinidae    -0.260  1.869  0.115 -1.731 |
## Esocidae       0.408  0.270  0.006  0.408 |
## Ictaluridae    1.926  6.013  0.143  1.926 |
## Nemacheilidae  1.303  2.751  0.065  1.303 |
## Percidae      -0.265  0.228  0.006 -0.382 |
## Salmonidae    -1.067  3.691  0.091 -1.539 |
## court          0.664 10.729  0.552  3.787 |
## 
## Categorical variables (eta2)
##                   Dim.1 Dim.2 Dim.3  
## famille         | 0.979 0.880 0.541 |
## longueur        | 0.947 0.696 0.664 |
## longueurMax     | 0.940 0.477 0.741 |
## facteurForme    | 0.048 0.777 0.182 |
## niveauTrophique | 0.691 0.418 0.157 |
doubs_pisc.acm$eig
new.vp <- c((5/4*(doubs_pisc.acm$eig[,1]-1/5))^2)
new.var <- c(round(new.vp/sum(new.vp), digits = 2))
vp.benzec <- data.frame(doubs_pisc.acm$eig[,1], doubs_pisc.acm$eig[,2]/100, new.var)
4 - Résultats et Interprétations.

Interprétation : si l’axe 1 après correction explique par exemple 70% de la variance, il sera le seul nécessaire pour interpréter la majeure partie de la distribution des poissons.

Le graphique des modalités “(invisible =”ind”)“ permet de voir quelles espèces s’associent entre elles.

Proximités : des modalités proches sur le graphique indiquent que ces caractéristiques (ex: telle famille de poisson et telle tranche de longueur) se retrouvent souvent sur les mêmes sites.

Opposition : une opposition sur le premier axe traduit souvent le gradient amont (espèces d’eaux vives, froides et oxygénées comme la Truite) versus aval (espèces d’eaux lentes comme la Brème ou la Carpe).

doubs_pisc.acm$var$contrib
##                       Dim 1       Dim 2       Dim 3       Dim 4       Dim 5
## Anguillidae     1.228960153 22.98762063  0.08217531  1.45071328  1.77307037
## Centrarchidae   0.114757232  0.06825803  6.01325384  4.15526908 12.43610292
## Cottidae        0.038302040  0.38053015  2.75137255  0.07098311  5.43530295
## Cyprinidae      0.621545642  1.56781805  1.86852487  7.17373392  0.08844514
## Esocidae       24.461182450  1.09571646  0.26983404  0.31876060  0.14428308
## Ictaluridae     0.114757232  0.06825803  6.01325384  4.15526908 12.43610292
## Nemacheilidae   0.038302040  0.38053015  2.75137255  0.07098311  5.43530295
## Percidae        0.432753203  0.25565968  0.22778432  2.94442277  5.03755786
## Salmonidae      0.100374503  0.27947054  3.69093989 23.40348937  0.12975848
## court           0.577991934  2.53428537 10.72860860  1.77040857  0.09955625
## long            1.213077696 17.71165920  0.12197180  5.67559318  0.49422460
## moyen           0.021879029  0.07708799 17.95311128  9.17485096  0.04102823
## très long      24.461182450  1.09571646  0.26983404  0.31876060  0.14428308
## courtMax        0.513640804  1.88141977 16.29815579  0.22573064  0.05361840
## longMax         1.104594589 10.35616963  2.53982776  0.68430649  0.89720300
## moyenMax        0.001419938  1.35421773 13.30008918  0.01445476  0.71701974
## très longMax   24.461182450  1.09571646  0.26983404  0.31876060  0.14428308
## ovale           0.034485997  0.18315692  7.63459944  4.24969242 14.97181587
## rond            0.067007341  0.76267816  0.24530535  0.42665295  0.25761232
## torpille        1.228960153 22.98762063  0.08217531  1.45071328  1.77307037
## predateur       1.129171230  9.84711135  4.33833310 11.74409887 11.00585440
## proie           0.377109369  2.46189841  0.00703064  0.44307303 13.60254630
## proieProie      0.319685510  0.19005699  2.10015255 18.98820889 12.40396647
## superPredateur 17.337677012  0.37734324  0.44245991  0.77107045  0.47799123
doubs_pisc.acm$ind$contrib
##             Dim 1       Dim 2      Dim 3      Dim 4      Dim 5
## Cogo 1.381086e-01  1.23599934  6.2875030  0.1184602  7.8579893
## Satr 4.147410e-01  2.98694028  2.4023971 26.4550971  1.2067268
## Phph 1.363534e-01  0.87980602  1.4182819  0.4106164  0.6468431
## Babl 1.381086e-01  1.23599934  6.2875030  0.1184602  7.8579893
## Thth 4.276349e-02  0.14506456  6.5395401 13.6511941  0.2361786
## Teso 1.363534e-01  0.87980602  1.4182819  0.4106164  0.6468431
## Chna 1.243488e-01  0.59491169 17.4467710  7.0921015 21.6452276
## Pato 1.659088e-01  0.65925335  0.6165812  4.6264099  1.4007490
## Lele 9.301319e-02  0.65201284  0.6238792  4.0550607  2.1723014
## Sqce 3.591497e-02  0.57273267  3.5265708  0.2958376  0.4068322
## Baba 1.852627e-01  0.06604275  2.3877257  0.6388163  1.5003417
## Albi 1.363534e-01  0.87980602  1.4182819  0.4106164  0.6468431
## Gogo 1.363534e-01  0.87980602  1.4182819  0.4106164  0.6468431
## Eslu 8.820154e+01  3.55899477  0.6166313  0.5319638  0.2085946
## Pefl 3.204757e+00  0.10295649  4.8722334  5.4457062  2.6645553
## Rham 1.659088e-01  0.65925335  0.6165812  4.6264099  1.4007490
## Legi 4.137888e-01  0.22170878 13.7416328  6.9345230 17.9792672
## Scer 9.301319e-02  0.65201284  0.6238792  4.0550607  2.1723014
## Cyca 7.270165e-01  4.34963064  1.3923590  7.8200855  0.1645404
## Titi 3.591497e-02  0.57273267  3.5265708  0.2958376  0.4068322
## Abbr 1.852627e-01  0.06604275  2.3877257  0.6388163  1.5003417
## Icme 4.137888e-01  0.22170878 13.7416328  6.9345230 17.9792672
## Gyce 5.568906e-04  0.93674906  1.4089265  0.6420770  4.7706643
## Ruru 3.591497e-02  0.57273267  3.5265708  0.2958376  0.4068322
## Blbj 7.124748e-02  0.87143848  0.1475871  0.2536156  0.2641190
## Alal 1.363534e-01  0.87980602  1.4182819  0.4106164  0.6468431
## Anan 4.431355e+00 74.66605177  0.1877890  2.4210236  2.5633839
doubs_pisc.acm$ind$cos2
##             Dim 1       Dim 2       Dim 3       Dim 4        Dim 5
## Cogo 4.647663e-03 0.037468192 0.134098011 0.001845038 0.1060265049
## Satr 1.632734e-02 0.105924239 0.059939517 0.482021546 0.0190474254
## Phph 3.773146e-02 0.219308255 0.248731183 0.052588724 0.0717671202
## Babl 4.647663e-03 0.037468192 0.134098011 0.001845038 0.1060265049
## Thth 2.395443e-03 0.007319889 0.232161393 0.353917531 0.0053044724
## Teso 3.773146e-02 0.219308255 0.248731183 0.052588724 0.0717671202
## Chna 3.551399e-03 0.015305267 0.315793443 0.093745759 0.2478615047
## Pato 2.597555e-02 0.092977556 0.061180879 0.335241804 0.0879315248
## Lele 1.299524e-02 0.082059010 0.055242114 0.262213933 0.1216882724
## Sqce 6.394268e-03 0.091853920 0.397922030 0.024377402 0.0290415374
## Baba 2.292309e-02 0.007361066 0.187240441 0.036583048 0.0744327898
## Albi 3.773146e-02 0.219308255 0.248731183 0.052588724 0.0717671202
## Gogo 3.773146e-02 0.219308255 0.248731183 0.052588724 0.0717671202
## Eslu 9.479956e-01 0.034457833 0.004200353 0.002646251 0.0008989224
## Pefl 1.072910e-01 0.003104933 0.103377554 0.084380290 0.0357669391
## Rham 2.597555e-02 0.092977556 0.061180879 0.335241804 0.0879315248
## Legi 1.189044e-02 0.005738950 0.250257733 0.092226219 0.2071476589
## Scer 1.299524e-02 0.082059010 0.055242114 0.262213933 0.1216882724
## Cyca 3.359530e-02 0.181057763 0.040777033 0.167249394 0.0030485668
## Titi 6.394268e-03 0.091853920 0.397922030 0.024377402 0.0290415374
## Abbr 2.292309e-02 0.007361066 0.187240441 0.036583048 0.0744327898
## Icme 1.189044e-02 0.005738950 0.250257733 0.092226219 0.2071476589
## Gyce 3.513714e-05 0.053241499 0.056339757 0.018750050 0.1206880784
## Ruru 6.394268e-03 0.091853920 0.397922030 0.024377402 0.0290415374
## Blbj 1.625113e-02 0.179052880 0.021335005 0.026773726 0.0241547564
## Alal 3.773146e-02 0.219308255 0.248731183 0.052588724 0.0717671202
## Anan 5.779219e-02 0.877175120 0.001552147 0.014613372 0.0134040267
doubs_pisc.acm$quali.sup$v.test
## NULL
par(mfrow = c(1,2))
plot(doubs_pisc.acm, invisible = "var")

plot(doubs_pisc.acm, invisible = "ind")

par(mfrow = c(1,1))
doubs_pisc.hc <- HCPC(doubs_pisc.acm, nb.clust = 3)

Le découpage en 3 clusters permet de sectoriser la rivière :

Cluster 1 : sites de tête de bassin (haute altitude, peu d’espèces mais spécifiques). Cluster 2 : zone de transition (mélange de biodiversité). Cluster 3 : zone de plaine (aval), riche en espèces cyprinicoles (poissons d’eau calme).

Formulez une synthèse de cette analyse ; pointez ses limites éventuelles et proposez des pistes d’amélioration.

5 - Synthèse et limites.

L’ACM a permis de simplifier la complexité du jeu de données piscicoles en quelques axes interprétables.

Limites : l’ACM est sensible aux modalités rares (espèces peu fréquentes) qui peuvent parfois “tirer” un axe de manière disproportionnée.

Pistes d’amélioration : il serait intéressant de croiser ces résultats avec les données environnementales (doubs_env) via plusieurs analyses pour vérifier si la typologie des poissons correspond parfaitement à la typologie physico-chimique de l’eau.