# First load and view the dataset dat.tf <- read.csv("Banta_TotalFruits.csv") str(dat.tf) # X observation number # reg factor for one of three regions; Netherlands, Spain or Sweden # popu factor with a level for each population (random effect) # gen factor with a level for each genotype (random effect) # rack nuisance factor for one of two greenhouse racks # nutrient factor with levels for low (value = 1) or high (value = 8) nutrients (fixed effect) # amd factor with levels for no damage or simulated herbivory (apical meristem damage) (fixed effect) # status nuisance factor for germination method # total.fruits the response variable; an integer indicating the number of fruits per plant # 2-3 genotypes nested within each of the 9 populations table(dat.tf$popu,dat.tf$gen) # Housekeeping: make integers into factors, relevel clipping (amd) and rename nutrient levels dat.tf <- transform(dat.tf, X=factor(X), gen=factor(gen), rack=factor(rack), amd=factor(amd,levels=c("unclipped","clipped")), nutrient=factor(nutrient,label=c("Low","High"))) # Install/load packages if(!require(lme4)){install.packages("lme4")} require(lme4) if(!require(coefplot2)){install.packages("coefplot2",repos="http://www.math.mcmaster.ca/bolker/R",type="source")} require(coefplot2) if(!require(reshape)){install.packages("reshape")} require(reshape) if(!require(ggplot2)){install.packages("ggplot2")} require(ggplot2) if(!require(plyr)){install.packages("plyr")} require(plyr) if(!require(gridExtra)){install.packages("gridExtra")} require(gridExtra) if(!require(emdbook)){install.packages("emdbook")} require(emdbook) source("glmm_funs.R")