Professional Documents
Culture Documents
Benthic Macroinvertebrate Community Assemblage in Bear Run Watershed
Benthic Macroinvertebrate Community Assemblage in Bear Run Watershed
Benthic Macroinvertebrate Community Assemblage in Bear Run Watershed
1
Analysis
I based my analysis off the AW09,
AW10, and AW11 worksheets. To first
understand my dataset, I wanted to conduct
a community analysis examining the
patterns within the entire species
assemblage. In the species assemblage data,
there were 6 locations in Bear Run and a
total of ten species. I wanted to also explore
the beta diversity because it would compare
changes in macroinvertebrate communities Figure 1. Histogram of overall abundance across sites.
between sampled locations. The result of
the beta diversity will be used to analyze the The histogram for overall abundance is
second part of my hypothesis in comparing significantly skewed to the right. There are
community structure between AMD and two outlier species that has a higher
control sites. The third analysis workshop frequency compared to the others (Figure 1).
will link my community results to my There is evenness in this community expect
environmental data. This will be used to for the two species. I would expect to see a
look at the effect of substrate type of dominant species in this community, which I
macroinvertebrate community structure. The would assume is the Diptera and Plecoptera,
R packages used in this analysis were: readr, because they were listed as the most
here, dplyr, tidyr, tibble, ggplot2, betapart, abundant genera.
and vegan. I then looked at species occurrence
in the population. The total occurrence of
Results the most abundant species and least
The first step in my analysis was to abundance species is show in Table 1.
complete a species assemblages diversity Table 1. Species Occurrence in the Bear Run Watershed.
analysis. The main intention of this part of
the analysis was to examine different Species Species Occurrence
patterns throughout the entire species
assemblage. Diversity, species richness and Plecoptera 12
species evenness were all analyzed in this Ephermeroptera 11
portion. The macroinvertebrate counts were
from six locations in the Bear Run Trichoptera 10
Watershed. There was a total of 10 species.
The most abundant species were Diptera Diptera 10
(123), Plecoptera (114), Coleoptera (26),
and Annelida (22). The least abundant Annelida 9
species were Trichoptera (19), Megaloptera Coleoptera 8
(30), Tipuloidea (2), Pterygota (1), and
Copepod (1). Megaloptera 3
Tipuloidea 2
2
Pterygota 1
Copepod 1
3
Table 2. Observed Community Simulation.
4
variation in the dataset. The points are fairly
close to the line, so it is a decent fit (Figure
9).
The plotted PCA was based on Figure 9. Stress plot of non-metric multidimensional
scaling.
method 2. The species that is most strongly
represented by PC1 appears to be Diptera (~ Next, I added categorical
0.5). The sites that appear the most different environmental descriptions to the
is site 7 and site 12. They are both control unconstrained ordination plot.
sites but differ as artificial and natural
substrate. The species that is most strongly
represented by PC2 was Annelida (0.4).
The two sites that appear the most different
is site 3 and site 5. This is interesting
because both sites represent AMD sites on
natural substrate. Based on the eigenvalues,
CA1, CA2, and CA3 should be included in
the correspondence analysis (Figure 8).
5
Lastly, I conducted a post hoc in the variables of substrate type,
comparison of the environmental variables temperature, and pH. The r-squared value
to unconstrained ordination via non-metric was also the same for all three approaches.
multidimensional scaling. This indicated that it did not matter what
approach I chose.
The ordination of this dataset was
examined by the variance, eigenvalues, and
accumulated constrained eigenvalues. The
original variation in the data set that is
captured in the first two constrained
components is about 0.55 (RDA1 + RDA2).
The amount of additional information that is
provided by the third constrained component
is approximately 0.035, which is not that
much.
I then made a triplot that displays my
Figure 11. Post Hoc comparison of environmental sites, species, and environmental variables
variables to unconstrained ordination.
from my Redundancy Analysis Model with
The variables that are almost contours.
perfectly aligned with NMDS axis 2 are the
substrate type and temperature. The
variable that appears to be the strongest
when explaining differences in species
communities is substrate type. The variable
that appears to change most similarly across
the sites is conductivity and pH. I then used
a redundancy analysis, which is a form of
multivariate linear regression. The amount
of variation that is explained by the
constrained portion of the ordination was
approximately 50% (r-squared = 0.73,
adjusted r-squared = 0.5). The variables that
have high variance inflation factors are
water temperature and conductivity. Figure 12. RDA plot of environmental variables.
7
plot(macro.Shannon, macro.Srare, plot(macro.temp, kind="incid")
xlab = "Observed No. of Species", ylab = #incidence
"Rarefied No. of Species")
oecosimu(macro_BRW.dat,
rarecurve(macro_BRW.dat, step = 20, nestedchecker, "quasiswap")
sample = macro.min, col = "blue", cex
= 0.6) #Beta Diversity ##Species Assemblage
Data
##Gamma Diversity
macro_env.tdf <-
macro.sac <- read.csv(here("Original Data",
specaccum(macro_BRW.dat) "macro_envR.csv"))
macro_sp.tdf <-
plot(macro.sac, ci.type="polygon", read.csv(here("Original Data",
ci.col="yellow") "macro_spR.csv"))
macroBRW_specRich<- macro_sp.tdf
specpool(macro_BRW.dat) #macro_sp.tdf <- macro_sp.tdf %>%
macroBRW_specRich
# mutate(SITE = as.factor(ï..SITE),
##Beta Diversity #SUBSTRATE =
as.factor(SUBSTRATE))
macro_dat.dist <-
vegdist(macro_BRW.dat, ##Nested Temperature
method="jaccard") # Includes relative
oecosimu(macro_BRW.dat,
abundance in the calculation
nestfun=nestedtemp, "quasiswap")
macro_bin.dist <- ##Similarity and Distance Measures
vegdist(macro_BRW.dat, binary=TRUE,
method="jaccard") # Calculation is betadiver(help='true') # Displays
based on presence-absence different methods used to calculate beta
diversity
betadiver(help='true') # Displays
macro.beta <-
different methods used to calculate
betadiver(macro_BRW.dat,
betadiver
method="sor", order=TRUE)
macro.beta <-
macro_dat.dist <-
betadiver(macro_BRW.dat, method="r",
vegdist(macro_BRW.dat,
order=TRUE)
macro.beta method="jaccard") # Includes relative
abundance in the calculation
#Nested Patterns for Beta Diversity
macro_bin.dist <-
nestedchecker(macro_BRW.dat) vegdist(macro_BRW.dat, binary=TRUE,
macro.temp <- method="jaccard") # Calculation is
nestedtemp(macro_BRW.dat) based on presence-absence
plot(macro.temp) # temperature
8
##Unconstrained Ordination ##Principle ##Plotting the PCA
Component Analysis
plot(macro.hel.pca, scaling=1)
view(macro_BRW.dat)
macro.hel<-decostand(macro_BRW.dat, plot(macro.hel.pca, scaling=2)
method="hellinger") biplot(macro.hel.pca, scaling=1)
macro.hel.pca<-rda(macro.hel)
biplot(macro.hel.pca, scaling=2)
##Number of Relevant Axes ##Correspondence Analysis
(macro.hel.eig<- macro.ca<-cca(macro_BRW.dat)
macro.hel.pca$CA$eig) summary(macro.ca)
macro.hel.eig[macro.hel.eig>mean(ma macro.ca.eig<-macro.ca$CA$eig
cro.hel.eig)] #Kaiser-Guttman macro.ca.eig
9
View(macro_env.tdf) ##Reducing Explanatory Variables
##Apriori Models
##Ellipses
macro.rda.KNPFe<-
plot(with(macro_env.tdf,macro.nmds, rda(macro.hel~CONDUCT+SUBSTRATE+TEM
type = "n")) P+PH+ï..SITE,macro.e.scl) #include
text(macro.nmds, display = "spec", all variables; r-squared value drops
cex=0.7, col="blue") drastically
#summary(pine.rda)
##Hulls macro.rda.KNPFe
plot(with(macro_env.tdf,macro.nmds,
RsquareAdj(macro.rda.KNPFe)
type = "n"))
text(macro.nmds, display = "spec", vif.cca(macro.rda.KNPFe)
cex=0.7, col="blue")
##Step-wise Variable Selection
#Post Hoc Comparison of Environmental
Variables to Unconstrained Ordination macro.mod.all<-rda(macro.hel~ . ,
##Non-metric multidimensional scaling macro.e.scl) #Set maximum model size
macro.mod.0<-rda(macro.hel~ 1 ,
##Fit Selected Variables macro.e.scl) #Set minimum model size
macro.ef <-
envfit(macro.nmds~SUBSTRATE+PH+TEMP+ macro.step.fwd=ordistep(macro.mod.0,
CONDUCT , data=macro_env.tdf, scope=formula(macro.mod.all),
perm=1000) direction="forward",
macro.ef permutations=how(nperm=1000))
coef(macro.step.bwd) with(macro_env.tdf,
ordisurf(macro.step.fwd, TEMP,
#Triplots add=TRUE, col="green4"))
plot(macro.step.bwd, scaling=2,
main= "Triplot RDA; Scaling 2",
type="n")
points(macro.step.bwd, display =
"sites", scaling=2,cex = 1.1, pch=21,
col="red", bg="yellow")
text(macro.step.bwd, display = "spec",
cex=0.7, col="black", scaling=2)
text(macro.step.both, display= "bp",
cex=0.7, col="purple4", scaling=2)
with(macro_env.tdf,
ordisurf(macro.step.fwd, PH,
add=TRUE, col="green4"))
plot(macro.step.bwd, scaling=2,
main= "Triplot RDA; Scaling 2",
type="n")
points(macro.step.bwd, display =
"sites", scaling=2,cex = 1.1, pch=21,
col="red", bg="yellow")
11