Chapter 12 Group indicator species

Which species are indicative of pre-defined groups?

The Indicator Value (IndVal) is the product of a species’ fidelity and specificity to a group (Dufrêne and Legendre 1997).

12.1 Using the indval function

Here we use labdsv::indval to examine indicators of single groups, but also use R package indicspecies to test whether species might indicate multiple groups.

First, let’s use the same groups we used for PERMANOVA: which species are indicative of the four groups defined by soil potassium? We can compare these “real” indicator species against a random expectation.

### real groups -- same as in the Group Differences section
grp <- cut(env$k, quantile(env$k, probs=seq(0,1,by=0.25)), include.lowest=T,
               labels=c('lo','med','hi','veryhi'))   # group memberships
iv  <- labdsv::indval(spe, grp) # indicator species analysis for *real* groups
summary(iv)                     # IndVal observed
##                          cluster indicator_value probability
## chamaemelum_fuscatum           1          0.2419       0.001
## borago_officinalis             1          0.2211       0.005
## convolvulus_tricolor           1          0.1857       0.004
## stachys_marrubiifolia          1          0.1600       0.017
## medicago_intertexta            2          0.2444       0.026
## phalaris_coerulescens          3          0.2689       0.010
## bolboschoenus_maritimus        4          0.4570       0.001
## aeluropus_littoralis           4          0.4463       0.001
## schoenoplectus_litoralis       4          0.3225       0.001
## eleocharis_uniglumis           4          0.2083       0.003
## juncus_maritimus               4          0.1790       0.036
## 
## Sum of probabilities                 =  17.763
## 
## Sum of Indicator Values              =  6.54
## 
## Sum of Significant Indicator Values  =  2.94
## 
## Number of Significant Indicators     =  11
## 
## Significant Indicator Distribution
## 
## 1 2 3 4 
## 4 1 1 5
### random groups
rnd <- sample(grp, length(grp), replace=T) # define random groups by bootstrapping
ivr <- labdsv::indval(spe, rnd) # indicator species analysis for *random* groups
summary(ivr)                    # IndVal expected at random
##                       cluster indicator_value probability
## sonchus_oleraceus           1          0.1717       0.025
## lolium_rigidum              2          0.2269       0.008
## atriplex_prostrata          2          0.1531       0.025
## juncus_maritimus            3          0.1758       0.036
## medicago_intertexta         4          0.2420       0.033
## phalaris_coerulescens       4          0.2370       0.026
## 
## Sum of probabilities                 =  25.936
## 
## Sum of Indicator Values              =  4.67
## 
## Sum of Significant Indicator Values  =  1.21
## 
## Number of Significant Indicators     =  6
## 
## Significant Indicator Distribution
## 
## 1 2 3 4 
## 1 2 1 2

How many indicator species would you expect at random?

### null expectation setting alpha = 5%
ceiling( ncol(spe) * 0.05 )
## [1] 3

NOTE: If you defined groups by a clustering method using species information, do not use IndVal to find indicator species of those groups (that would be circular logic).

12.2 Key references

Dufrêne, M. and Legendre, P. 1997. Species assemblages and indicator species: the need for a flexible asymmetrical approach. Ecological Monographs 67(3): 345–366.

de Cáceres, M., P. Legendre, and M. Moretti. 2010. Improving indicator species analysis by combining groups of sites. Oikos 119:1674–1684.