This Data comes from a semester project involving Hemlock dominated stands in western Massachusetts. Analysis was preformed using ANOVA and Fisher exact tests. This first graph organizes the data involving tree age in ascending order and partitions using color.
rm(list=ls(all=TRUE))
Btest<-read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Btest.csv")
attach(Btest)
plot(age, ylim=c(0,310),lwd=5,pch=5,col="chocolate4",axes=FALSE,xlab="",ylab="")
par(new=TRUE)
detach(Btest)
The rest of the graph uses the same format:
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
## Df Sum Sq Mean Sq F value Pr(>F)
## site.number 1 17511 17511 7.004 0.0118 *
## Residuals 38 94999 2500
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Legend plot command was as follows:
legend(“topleft”, legend = c(“Black Brook”,“Clark Ridge”,“Deerfield River”),NULL,pch=c(5,6,7),lwd=3,col=c(“chocolate4”,“darkgoldenrod1”,“darkgreen”)) legend(“top”,legend=c(“Hampshire College”,“Macleish Old”,“Macleish Young”),NULL,pch=c(2,8,9),lwd=3,col=c(“darkorchid1”,“dodgerblue4”,“slateblue1”))
This data was used to determine the average age for sites, and was used to organize the sites.
rm(list=ls(all=TRUE))
#Black Brook = B
#Clark Ridge = C
#Deerifeld River = D
#Hampshire College = H
#Macleish Old = O
#Stand Age Soil = S
#Tree Core Dataset = T
#Macleish Young = Y
B <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Black Brook.csv")
C <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Clark Ridge.csv")
## Warning in read.table(file = file, header = header, sep = sep, quote =
## quote, : incomplete final line found by readTableHeader on
## '/Users/matthewhecking/Documents/General Academic Documents/Fall 2014
## Course Work/Plant Ecology Smith/Semester Project/Clark Ridge.csv'
D <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Deerfield River.csv")
## Warning in read.table(file = file, header = header, sep = sep, quote =
## quote, : incomplete final line found by readTableHeader on
## '/Users/matthewhecking/Documents/General Academic Documents/Fall 2014
## Course Work/Plant Ecology Smith/Semester Project/Deerfield River.csv'
H <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Hampshire College.csv")
O <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Macleish Old.csv")
S <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Stand.csv")
T <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Tree Core Dataset.csv")
Y <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Macleish Young.csv")
attach(B)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 163.7143
detach(B)
Again, the same pattern was used:
attach(B)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 163.7143
detach(B)
attach(C)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 156
detach(C)
attach(D)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 120.3333
detach(D)
attach(H)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 61
detach(H)
attach(O)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 146.5
detach(O)
attach(Y)
## The following objects are masked from T:
##
## age, date, location, site.number, tree.number, tree.species
## The following objects are masked from Ytest:
##
## age, date, location, site.number, tree.number, tree.species
mean(age)
## [1] 98.2
detach(Y)
The samples were then arranged and compared with soil compsition:
rm(list=ls(all=TRUE))
S <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Stand2.csv")
attach(S)
head(S)
## Site_Name Site_Number Sample Before_Ashing.g.
## 1 Hampshire Woods 1 1 13.29
## 2 Hampshire Woods 1 2 14.67
## 3 Hampshire Woods 1 3 16.87
## 4 Hampshire Woods 1 4 13.62
## 5 MaCleish Young 2 1 15.43
## 6 MaCleish Young 2 2 17.86
## Before_Minus_Crucible After_Ashing.g. After_Minus_Crucible
## 1 2.11 11.74 0.56
## 2 3.49 12.92 1.74
## 3 5.69 14.65 3.47
## 4 2.44 12.23 1.05
## 5 4.25 12.85 1.67
## 6 6.68 14.70 3.52
## Difference..g. Difference_Minus_Crucible percent.organic.matter
## 1 1.55 1.55 0.2654028
## 2 1.75 1.75 0.4985673
## 3 2.22 2.22 0.6098418
## 4 1.39 1.39 0.4303279
## 5 2.58 2.58 0.3929412
## 6 3.16 3.16 0.5269461
names(S)
## [1] "Site_Name" "Site_Number"
## [3] "Sample" "Before_Ashing.g."
## [5] "Before_Minus_Crucible" "After_Ashing.g."
## [7] "After_Minus_Crucible" "Difference..g."
## [9] "Difference_Minus_Crucible" "percent.organic.matter"
plot(lwd = 3, Site_Number , percent.organic.matter, axes = FALSE,ylim=c(0,1),xlab = "Sample Site",ylab = "% Organic Matter",main = "Soil Composition across Hemlock sites")
### type ?plot to determine what to put into the type catagory ###
axis(1,1:11,c("Hampshire","Macleish Young","Deerfield","Macleish Old","Clark Ridge","Black Brook"[1:6]),tick = TRUE,NA,NA,)
axis(2)
fit=aov(lm(percent.organic.matter~Site_Number))
summary(fit)
## Df Sum Sq Mean Sq F value Pr(>F)
## Site_Number 1 0.045 0.0449 0.06 0.809
## Residuals 22 16.574 0.7534
abline(fit, lwd=2)
summary(lm(percent.organic.matter~Site_Number))$r.squared
## [1] 0.002699015
legend("topright",legend="R^2=.0269")
A Fisher test was then used to look at a subset of the data, a two-site comparison between near identical sites that differed in soil age:
rm(list=ls(all=TRUE))
S <- read.csv("/Users/matthewhecking/Documents/General Academic Documents/Fall 2014 Course Work/Plant Ecology Smith/Semester Project/Stand2.csv")
attach(S)
## The following objects are masked from S (position 3):
##
## After_Ashing.g., After_Minus_Crucible, Before_Ashing.g.,
## Before_Minus_Crucible, Difference_Minus_Crucible,
## Difference..g., percent.organic.matter, Sample, Site_Name,
## Site_Number
head(S)
## Site_Name Site_Number Sample Before_Ashing.g.
## 1 Hampshire Woods 1 1 13.29
## 2 Hampshire Woods 1 2 14.67
## 3 Hampshire Woods 1 3 16.87
## 4 Hampshire Woods 1 4 13.62
## 5 MaCleish Young 2 1 15.43
## 6 MaCleish Young 2 2 17.86
## Before_Minus_Crucible After_Ashing.g. After_Minus_Crucible
## 1 2.11 11.74 0.56
## 2 3.49 12.92 1.74
## 3 5.69 14.65 3.47
## 4 2.44 12.23 1.05
## 5 4.25 12.85 1.67
## 6 6.68 14.70 3.52
## Difference..g. Difference_Minus_Crucible percent.organic.matter
## 1 1.55 1.55 0.2654028
## 2 1.75 1.75 0.4985673
## 3 2.22 2.22 0.6098418
## 4 1.39 1.39 0.4303279
## 5 2.58 2.58 0.3929412
## 6 3.16 3.16 0.5269461
sit <- matrix(c(0.393,0.527,0.753,0.759,0.767,0.407,0.500,0.718),nrow=4,ncol=2,byrow=FALSE,dimnames=list(c("Percent Organic Matter","","",""),c("Macleish Young","Macleish Old")))
fisher.test(sit)
## Warning in fisher.test(sit): 'x' has been rounded to integer: Mean
## relative difference: 0.5754561
##
## Fisher's Exact Test for Count Data
##
## data: sit
## p-value = 1
## alternative hypothesis: two.sided