DOI: 10.5061/dryad.dbrv15dwr
title: Data from: Climatic and vegetational drivers of insect beta diversity at the continental scale

description: Aim We construct a framework for mapping pattern and drivers of insect
 diversity at the continental scale and use it to test whether and which
 environmental gradients drive insect beta diversity. Location Global;
 North and Central America; Western Europe. Time period 21st century. Major
 taxa studied Insects. Methods An informatics system was developed to
 integrate terrestrial data on insects with environmental parameters. We
 mined repositories of data for distribution, climatic data were retrieved
 (WorldClim), and vegetation parameters inferred from remote sensing
 analysis (MODIS Vegetation Continuous Fields). Beta diversity between
 sites was calculated and then modeled with two methods, Mantel test with
 multiple regression and generalized dissimilarity modeling. Results
 Geographic distance was the main driver of insect beta diversity.
 Independent of geographic distance, bioclimate variables explained more
 variance in dissimilarity than vegetation variables, although the
 particular variables found to be significant were more consistent in the
 latter, particularly, tree cover. Tree cover gradients drove compositional
 dissimilarity at denser coverages, in both continental case studies. For
 climate, gradients in temperature parameters were significant in driving
 beta diversity more so than gradients in precipitation parameters. Main
 conclusions Although environmental gradients drive insect beta diversity
 independently of geography, the relative contribution of different
 climatic and vegetational parameters is not expected to be consistent in
 different study systems. With further incorporation of additional temporal
 information and variables, this approach will enable the development of a
 predictive framework for conserving insect biodiversity at the global
 scale.
description:   # will need to make equivelent rows using
 the intersect R command. example: overlapping_samples
 &lt;- intersect(row.names(params_MCL),
 row.names(comm_MCL));length(overlapping_samples)<br> comm_MCL
 &lt;- comm_MCL[overlapping_samples,]<br> params_MCL &lt;-
 params_MCL[overlapping_samples,]   #
 consider removing species which are found at very few sites:<br>
 column_names &lt;- colnames(comm_MCL)<br>
 region_counts_per_species &lt;- seq(from=0, to=0,
 length=length(comm_MCL[1 , ]))<br> for(j in
 1:length(region_counts_per_species))<br>     {<br>   
  current_column &lt;- comm_MCL[ , j ];current_column_ID &lt;-
 column_names[j]<br>     indexs &lt;-
 (1:length(current_column))[current_column &gt;= 1]; # print(c( j ,
 current_column_ID, length(region_counts_per_species) , length(indexs)
 ))<br>     if(length(indexs) &gt;=
 3){region_counts_per_species[j] &lt;- 1}<br>     }<br>
 rm_cols2 &lt;-
 (1:length(region_counts_per_species))[region_counts_per_species ==
 0];print (c("removing species:" , length(rm_cols2) )); print (c(
 "proportion:" , length(rm_cols2) /  length(comm_MCL[ 1 , 
 ])))   # and if removing sites with
 few observations: species_counts_per_region &lt;-
 seq(from=0, to=0, length=length(comm_MCL[ , 1]))<br> for(j in
 1:length(species_counts_per_region))<br>     {<br>   
  current_row &lt;- comm_MCL[j , ]<br>     indexs &lt;-
 (1:length(current_row))[current_row &gt;= 1]<br>    
 if(length(indexs) &gt;= 30)<br>       
  {species_counts_per_region[j] &lt;- 1}<br>     }
 rm_rows&lt;-(1:length(species_counts_per_region))[species_counts_per_region == 0]; if(length(rm_rows) &gt;= 1)<br>     {<br>     comm_MCL&lt;-comm_MCL[-rm_rows , ];params_MCL &lt;- params_MCL[-rm_rows , ];<br>     }