Analyser ses données écologiques en SAS

Dernière modification : 20/03/2004

Exemple 12 :

Comment définir le rôle de différents facteurs écologiques sur la distribution d'une espèce (autécologie)?

Objectif : identifier les variables qui permettent de prédire la présence ou l''abondance d'une espèce.

Procédure : La théorie est expliquée dans ce document. Pour les abondances, une première approche est d'abord la simple régression multiple linéaire. Mais elle ne sera adaptée qu'à des espèces dont les abondances diminuent ou augmentent régulièrement le long d'un gradient. On ne pourra donc pas identifier des relations non-linéaires comme celle définie par la courbe gaussienne, qui impliquent des régressions multiples non-linéaires. Enfin, pour prédire la présence d'une espèce, ou plutôt la probabilité de sa présence en fonction d'une variable continue ou d'une combinaison de variables continue, il faut utiliser la régression logistique.

Jeu de données : Une matrice de variables décrivant les stations où l'espèce a été observée avec une varaible définissant la présence ou l'abondance de l'espèce étudiée.

Exemples : Facteurs édaphiques et microclimatiques pour expliquer la distribution de Carabides, relevés botaniques ou de ressources florales pour expliquer la répartition de papillons ou d'autres butineurs, ...

Résultats: PROC REG : pour la régression linaire simple, linéaire multiple ou non-linéaire multiple. La procédure permet de définir a priori la combinaison de variables ou de laisser la "meilleure" combinaison s'exprimer (selection=forward, bacward ou stepwise).

PROC LOGISTIC : pour la régression logistique avec aussi la possibilité de sélectionner la meilleure combinaison des variables pour définir la probabilité de présence d'une espèce.


 

 


Par exemple, on souhaiterait identifier les équations qui permettent de prédire les abondances d'un papillon (variable abond) a partir de plusieurs variables écologiques.

* Lecture des donnees : abondance du papillon et 4 variables ecologiques;
options nocenter;
data ligea; infile "ligeatest.txt" firstobs=2;
input abond aire humidite paysage altitude  ;
run;
   
proc print;
   
* On calcule le carre des variables ecologiques (regression gaussienne);  
data ligea; set ligea;
array vect(4) aire--altitude;
array carvec(4) carre1-carre4;
do j = 1 to 4;
  carvec(j) = vect(j)*vect(j);
end;
* On cree la variable absence/presence pour la regression logistique;
* On cree le logarithme de l'abondance pour la regression gaussienne;
logabond=0; pres=0;
if abond > 0 then pres = 1;
if abond > 1 then logabond= log(abond);
run;
   
TITLE "Regression Multiple lineaire";
proc reg data=ligea;
model abond=aire--altitude  /
                selection=stepwise cli r;
run;
   
   
TITLE "Regression Multiple Gaussienne stepwise";
proc reg data=ligea;
model logabond=aire--altitude carre1--carre4 /
                selection=stepwise cli r;
run;
   
TITLE "Regression Multiple Gaussienne backward";
proc reg data=ligea;
model logabond=aire--altitude carre1--carre4 /
                selection=backward cli r;
run;
   
TITLE "Regression Multiple Gaussienne aire et son carré";
proc reg data=ligea;
model logabond=aire carre1;
run;
   

Jeu de données utilisé :

   Obs    abond    aire    humidite    paysage    altitude
   
  1       0      2.0       1.1        0.74       0.86  
  2       0      3.0       1.1        1.00       1.00  
  3       0      3.2       1.2        0.73       0.85  
  4       0      4.2       1.2        0.64       0.80  
  5       2      6.0       1.5        0.67       0.82  
  6       7      7.8       1.5        0.22       0.47  
  7      15     10.1       2.1        0.22       0.47  
  8      18     11.0       2.1        0.25       0.50  
  9      32     12.0       2.1        0.02       0.14  
 10      43     12.1       2.1        0.79       0.89  
 11      45     12.5       2.4        0.50       0.71  
 12      46     12.9       2.4        0.32       0.57  
 13      36     13.0       2.6        0.78       0.88  
 14      24     14.0       2.9        0.01       0.45  
 15      20     15.0       3.0        0.92       0.87  
 16      14     15.0       3.5        0.18       0.42  
 17       9     16.0       4.5        0.07       0.26  
 18       7     17.0       5.0        0.06       0.25  
 19       3     19.0       5.3        0.31       0.56  
 20       0     21.0       6.5        0.87       0.93  
   

On obtient alors le listing suivant pour les régressions linéaires :

Regression Multiple lineaire
   
The REG Procedure
Model: MODEL1
Dependent Variable: abond 
   
No variable met the 0.1500 significance level for entry into the model.

Aucune variable n'explique les abondances de l'espèce de manière linéaire.

Quid de la regression gaussienne en laissant la sélection des variables (Stepwise)

Regression Multiple Gaussienne Stepwise
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
 
Stepwise Selection: Step 1
   
Variable carre4 Entered: R-Square = 0.1929 and C(p) = 168.7054
   
   
                             Analysis of Variance
 
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     1        7.90408        7.90408       4.30    0.0527
Error                    18       33.08129        1.83785                     
Corrected Total          19       40.98538                                    
   
   
             Parameter     Standard
Variable      Estimate        Error   Type II SS  F Value  Pr > F
   
Intercept      3.00613      0.55707     53.51889    29.12  <.0001
carre4        -2.07862      1.00231      7.90408     4.30  0.0527
   
   
   
All variables left in the model are significant at the 0.1500 level.
   
No other variable met the 0.1500 significance level for entry into the model.
   
   
   
                                  Summary of Stepwise Selection
 
        Variable     Variable     Number     Partial      Model
Step    Entered      Removed      Vars In    R-Square    R-Square     C(p)      F Value    Pr > F
   
  1     carre4                        1       0.1929      0.1929     168.705       4.30    0.0527
   
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
   
                                                      Output Statistics
 
            Dep Var  Predicted     Std Error                                   Std Error   Student                     Cook's
     Obs   logabond      Value  Mean Predict     95% CL Predict      Residual   Residual  Residual    -2-1 0 1 2            D
   
       1          0     1.4688        0.4086    -1.5059     4.4435    -1.4688      1.293    -1.136  |    **|      |     0.064
       2          0     0.9275        0.6149    -2.1999     4.0549    -0.9275      1.208    -0.768  |     *|      |     0.076
       3          0     1.5043        0.3973    -1.4636     4.4723    -1.5043      1.296    -1.161  |    **|      |     0.063
       4          0     1.6758        0.3496    -1.2655     4.6171    -1.6758      1.310    -1.279  |    **|      |     0.058
       5     0.6931     1.6085        0.3668    -1.3421     4.5591    -0.9153      1.305    -0.701  |     *|      |     0.019
       6     1.9459     2.5470        0.3904    -0.4169     5.5109    -0.6011      1.298    -0.463  |      |      |     0.010
       7     2.7081     2.5470        0.3904    -0.4169     5.5109     0.1611      1.298     0.124  |      |      |     0.001
       8     2.8904     2.4865        0.3727    -0.4673     5.4403     0.4039      1.303     0.310  |      |      |     0.004
       9     3.4657     2.9654        0.5407    -0.1009     6.0317     0.5003      1.243     0.402  |      |      |     0.015
      10     3.7612     1.3597        0.4456    -1.6384     4.3577     2.4015      1.280     1.876  |      |***   |     0.213
      11     3.8067     1.9583        0.3055    -0.9613     4.8779     1.8484      1.321     1.399  |      |**    |     0.052
      12     3.8286     2.3308        0.3346    -0.6029     5.2644     1.4979      1.314     1.140  |      |**    |     0.042
      13     3.5835     1.3964        0.4327    -1.5933     4.3862     2.1871      1.285     1.702  |      |***   |     0.164
      14     3.1781     2.5852        0.4022    -0.3857     5.5561     0.5928      1.295     0.458  |      |      |     0.010
      15     2.9957     1.4328        0.4204    -1.5491     4.4148     1.5629      1.289     1.213  |      |**    |     0.078
      16     2.6391     2.6395        0.4199    -0.3422     5.6211  -0.000404      1.289   -0.0003  |      |      |     0.000
      17     2.1972     2.8656        0.5016    -0.1712     5.9025    -0.6684      1.259    -0.531  |     *|      |     0.022
      18     1.9459     2.8762        0.5057    -0.1636     5.9161    -0.9303      1.258    -0.740  |     *|      |     0.044
      19     1.0986     2.3543        0.3396    -0.5819     5.2904    -1.2557      1.312    -0.957  |     *|      |     0.031
      20          0     1.2083        0.5015    -1.8285     4.2451    -1.2083      1.259    -0.959  |     *|      |     0.073
   
   
Sum of Residuals                           0
Sum of Squared Residuals            33.08129
Predicted Residual SS (PRESS)       40.33509

La régression gaussienne est presque significative (P = 0.0527) pour une valeur du carré de l'altitude. Une fois que la sélection a entré cette variable, elle ne peut plus en entrer d'autres ...

Si maintenant on regarde le listing produit par la sélection backward :

Regression Multiple Gaussienne Backward
   
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
 
Backward Elimination: Step 0
   
All Variables Entered: R-Square = 0.9519 and C(p) = 9.0000
   
   
                             Analysis of Variance
 
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     8       39.01524        4.87691      27.23    <.0001
Error                    11        1.97013        0.17910                     
Corrected Total          19       40.98538                                    
   
   
             Parameter     Standard
Variable      Estimate        Error   Type II SS  F Value  Pr > F
   
Intercept     -0.80724      1.24034      0.07586     0.42  0.5285
aire           0.61264      0.17783      2.12580    11.87  0.0055
humidite       0.01938      0.76482   0.00011494     0.00  0.9802
paysage        0.25896      2.26722      0.00234     0.01  0.9111
altitude      -5.81428      3.60568      0.46571     2.60  0.1351
carre1        -0.01039      0.01131      0.15121     0.84  0.3779
carre2        -0.16336      0.09192      0.56577     3.16  0.1031
carre3        -2.75345      2.19103      0.28285     1.58  0.2349
carre4         7.48277      4.32280      0.53666     3.00  0.1114
   

Un modèle avec toute les variables est significatif mais seule le paramètre de l'aire est different de 0. On procède donc à une élimination progressive des variabales inutiles ... Plus on élimine plus le F augmente ...

Backward Elimination: Step 1
   
   
Variable humidite Removed: R-Square = 0.9519 and C(p) = 7.0006
   
   
                             Analysis of Variance
 
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     7       39.01513        5.57359      33.95    <.0001
Error                    12        1.97025        0.16419                     
Corrected Total          19       40.98538                                    
   
   
   
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
 
Backward Elimination: Step 1
   
             Parameter     Standard
Variable      Estimate        Error   Type II SS  F Value  Pr > F
   
Intercept     -0.79096      1.01589      0.09953     0.61  0.4513
aire           0.61392      0.16321      2.32299    14.15  0.0027
paysage        0.25526      2.16627      0.00228     0.01  0.9081
altitude      -5.79445      3.36999      0.48541     2.96  0.1112
carre1        -0.01037      0.01081      0.15119     0.92  0.3562
carre2        -0.16142      0.04854      1.81607    11.06  0.0060
carre3        -2.73982      2.03361      0.29802     1.82  0.2028
carre4         7.45150      3.96654      0.57943     3.53  0.0848
   
   
Backward Elimination: Step 2
   
   
Variable paysage Removed: R-Square = 0.9519 and C(p) = 5.0134
   
   
                             Analysis of Variance
 
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     6       39.01285        6.50214      42.85    <.0001
Error                    13        1.97253        0.15173                     
Corrected Total          19       40.98538                                    
   
   
             Parameter     Standard
Variable      Estimate        Error   Type II SS  F Value  Pr > F
   
Intercept     -0.82695      0.93144      0.11960     0.79  0.3908
aire           0.61688      0.15503      2.40240    15.83  0.0016
altitude      -5.63648      2.97227      0.54565     3.60  0.0804
carre1        -0.01058      0.01025      0.16183     1.07  0.3206
carre2        -0.16052      0.04608      1.84131    12.14  0.0040
carre3        -2.59580      1.56249      0.41878     2.76  0.1206
carre4         7.44937      3.81309      0.57912     3.82  0.0726
   
Backward Elimination: Step 3
   
   
Variable carre1 Removed: R-Square = 0.9479 and C(p) = 3.9169
   
   
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
 
Backward Elimination: Step 3
   
                             Analysis of Variance
 
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     5       38.85102        7.77020      50.97    <.0001
Error                    14        2.13436        0.15245                     
Corrected Total          19       40.98538                                    
   
   
             Parameter     Standard
Variable      Estimate        Error   Type II SS  F Value  Pr > F
   
Intercept     -0.10886      0.62122      0.00468     0.03  0.8634
aire           0.46073      0.03431     27.48644   180.29  <.0001
altitude      -6.16334      2.93511      0.67224     4.41  0.0543
carre2        -0.20537      0.01546     26.91294   176.53  <.0001
carre3        -2.91392      1.53546      0.54906     3.60  0.0785
carre4         8.00301      3.78418      0.68187     4.47  0.0529
   
   
All variables left in the model are significant at the 0.1000 level.
   

On voit bien que deux variables sont largement significatives : l'aire et son carré. Si le niveau sélectionné était 0.05, les autres seraient d'ailleurs éliminées.

   
                             Summary of Backward Elimination
 
        Variable     Number     Partial      Model
Step    Removed      Vars In    R-Square    R-Square     C(p)      F Value    Pr > F
   
  1     humidite         7       0.0000      0.9519      7.0006       0.00    0.9802
  2     paysage          6       0.0001      0.9519      5.0134       0.01    0.9081
  3     carre1           5       0.0039      0.9479      3.9169       1.07    0.3206
   
The REG Procedure
Model: MODEL1
Dependent Variable: logabond 
   
                                                      Output Statistics
 
            Dep Var  Predicted     Std Error                                   Std Error   Student                     Cook's
     Obs   logabond      Value  Mean Predict     95% CL Predict      Residual   Residual  Residual    -2-1 0 1 2            D
   
       1          0    -0.4130        0.2024    -1.3563     0.5303     0.4130      0.334     1.237  |      |**    |     0.094
       2          0    -0.0494        0.2588    -1.0541     0.9552     0.0494      0.292     0.169  |      |      |     0.004
       3          0     0.0602        0.1768    -0.8591     0.9796    -0.0602      0.348    -0.173  |      |      |     0.001
       4          0     0.5282        0.1672    -0.3829     1.4392    -0.5282      0.353    -1.497  |    **|      |     0.084
       5     0.6931     1.2127        0.1455     0.3190     2.1063    -0.5195      0.362    -1.434  |    **|      |     0.055
       6     1.9459     1.7528        0.1760     0.8343     2.6713     0.1931      0.349     0.554  |      |*     |     0.013
       7     2.7081     2.3689        0.1491     1.4725     3.2653     0.3392      0.361     0.940  |      |*     |     0.025
       8     2.8904     2.7904        0.1423     1.8991     3.6817     0.0999      0.364     0.275  |      |      |     0.002
       9     3.4657     3.8070        0.3244     2.7183     4.8957    -0.3413      0.217    -1.570  |   ***|      |     0.915
      10     3.7612     3.5955        0.2263     2.6276     4.5634     0.1657      0.318     0.521  |      |*     |     0.023
      11     3.8067     3.3972        0.1770     2.4777     4.3167     0.4095      0.348     1.177  |      |**    |     0.060
      12     3.8286     3.4403        0.1534     2.5405     4.3401     0.3883      0.359     1.082  |      |**    |     0.036
      13     3.5835     3.4933        0.2126     2.5397     4.4469     0.0902      0.327     0.276  |      |      |     0.005
      14     3.1781     3.4610        0.1437     2.5686     4.3534    -0.2830      0.363    -0.779  |     *|      |     0.016
      15     2.9957     3.1828        0.3535     2.0531     4.3125    -0.1870      0.166    -1.128  |    **|      |     0.964
      16     2.6391     3.0150        0.1385     2.1264     3.9036    -0.3760      0.365    -1.030  |    **|      |     0.025
      17     2.1972     2.0284        0.1880     1.0989     2.9578     0.1689      0.342     0.493  |      |      |     0.012
      18     1.9459     1.5382        0.2145     0.5827     2.4937     0.4077      0.326     1.250  |      |**    |     0.113
      19     1.0986     1.6544        0.2144     0.6991     2.6098    -0.5558      0.326    -1.703  |   ***|      |     0.209
      20          0    -0.1260        0.3230    -1.2128     0.9608     0.1260      0.219     0.574  |      |*     |     0.119
   
   
Sum of Residuals                           0
Sum of Squared Residuals             2.13436
Predicted Residual SS (PRESS)        5.66311

Si on refait la regression mais uniquement avec les deux variables identifiées comme pertinentes :

Regression Multiple Gaussienne aire et son carré
The REG Procedure
Model: MODEL1
Dependent Variable: logabond
   
                             Analysis of Variance
   
                                    Sum of           Mean
Source                   DF        Squares         Square    F Value    Pr > F
   
Model                     2       38.12231       19.06115     113.18    <.0001
Error                    17        2.86307        0.16842
Corrected Total          19       40.98538
   
   
Root MSE              0.41039    R-Square     0.9301
Dependent Mean        2.03689    Adj R-Sq     0.9219
Coeff Var            20.14762
   
   
                        Parameter Estimates
   
                     Parameter       Standard
Variable     DF       Estimate          Error    t Value    Pr > |t|
   
Intercept     1       -1.04941        0.25329      -4.14      0.0007
aire          1        0.43813        0.02952      14.84      <.0001
carre2        1       -0.19711        0.01463     -13.47      <.0001

Le test de F est bien meilleur et tous les paramètres sont bien différents de zéros.

L'équation est donc : Log(abondance) = -1.04941 + 0.43813 * aire - 0.19711 * aire * aire.

Lorsqu'on dispose des données d'abondance de l'espèce sur un gradient, il suffit de faire une régression polynomiale (équation du type y = b0 + b1x + b2x2 = une parabole) en utilisant les logarithmes des abondances pour pouvoir déduire les paramètres biologiques de l'espèce, soit :

- l'optimum u = - b1/(2b2) ;
- l'amplitude t = 1/(-2b2)1/2;
- le maximum c = exp (b0 + b1u + b2u2).

Il suffit donc de remplacer les valeurs b0, b1 et b2 définis par la régression dans les 3 équations pour avoir une interprétation écologique pertinente.

On remarquera donc que la régression linéaire ne donnait aucune équation plausible et que la sélection "stepwise" des variables masquait une véritable relation écologique. Il faut donc faire de multiples essais et tests avec des combinaisons différentes pour identifier celle qui est la plus explicative. 

[Introduction] [Conventions SAS] [DATA step] [Fonctions] [Procédures de base]