Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(DImodels)
## ----eval = FALSE-------------------------------------------------------------
# install.packages("DImodels")
# library("DImodels")
## ----eval = FALSE-------------------------------------------------------------
# ?DImodels
## ----eval = FALSE-------------------------------------------------------------
# ?sim3
## ----echo = FALSE, results='asis'---------------------------------------------
library(DImodels)
data("design_a")
knitr::kable(head(design_a))
## ----echo = TRUE, results='asis'----------------------------------------------
data("sim3")
knitr::kable(head(sim3, 10))
## ----echo = TRUE--------------------------------------------------------------
hist(sim3$response, xlab = "Response", main = "")
# Similar graphs can also be generated for the other species proportions.
plot(sim3$p1, sim3$response, xlab = "Proportion of species 1", ylab = "Response")
summary(sim3$response)
## ----echo = TRUE--------------------------------------------------------------
auto1 <- autoDI(y = "response", prop = 4:12, treat = "treatment",
FG = c("FG1","FG1","FG1","FG1","FG1","FG2","FG2","FG3","FG3"), data = sim3,
selection = "Ftest")
## ----eval = FALSE-------------------------------------------------------------
# ?autoDI
## ----echo = TRUE--------------------------------------------------------------
summary(auto1)
## ----eval = FALSE, echo = TRUE------------------------------------------------
# theta_CI(auto1, conf = .95)
## ----echo = TRUE--------------------------------------------------------------
m1 <- DI(y = "response", prop = 4:12,
FG = c("FG1","FG1","FG1","FG1","FG1","FG2","FG2","FG3","FG3"), treat = "treatment",
DImodel = "FG", data = sim3)
summary(m1)
## ----echo = TRUE--------------------------------------------------------------
m1_theta <- update_DI(object = m1, estimate_theta = TRUE)
coef(m1_theta)
## ----echo = TRUE--------------------------------------------------------------
m1_group <- update_DI(object = m1_theta,
ID = c("ID1", "ID1", "ID1", "ID1", "ID1",
"ID1", "ID1", "ID1", "ID1"))
coef(m1_group)
## ----echo = TRUE--------------------------------------------------------------
m1_group2 <- update_DI(object = m1_theta,
ID = c("ID1", "ID1", "ID1",
"ID2", "ID2", "ID2",
"ID3", "ID3", "ID3"))
coef(m1_group2)
## ----eval = FALSE-------------------------------------------------------------
# ?DI
# ?autoDI
## ----echo = TRUE--------------------------------------------------------------
m2 <- DI(y = "response", prop = 4:12,
FG = c("FG1","FG1","FG1","FG1","FG1","FG2","FG2","FG3","FG3"), treat = "treatment",
DImodel = "FG", extra_formula = ~ (p1 + p2 + p3 + p4):treatment,
data = sim3)
summary(m2)
## ----echo = TRUE--------------------------------------------------------------
FG_matrix <- DI_data(prop = 4:12, FG = c("FG1","FG1","FG1","FG1","FG1","FG2","FG2","FG3","FG3"),
data = sim3, what = "FG")
sim3a <- data.frame(sim3, FG_matrix)
## ----echo = TRUE--------------------------------------------------------------
m3 <- DI(y = "response", prop = 4:12,
FG = c("FG1","FG1","FG1","FG1","FG1","FG2","FG2","FG3","FG3"),
treat = "treatment", DImodel = "FG",
extra_formula = ~ (bfg_FG1_FG2 + bfg_FG1_FG3 + bfg_FG2_FG3 +
wfg_FG1 + wfg_FG2 + wfg_FG3) : treatment, data = sim3a)
summary(m3)
## ----echo = TRUE--------------------------------------------------------------
sim3a$treatmentA <- as.numeric(sim3a$treatment == "A")
## ----echo = TRUE--------------------------------------------------------------
m3 <- DI(y = "response",
custom_formula = response ~ 0 + p1 + p2 + p3 + p4 + p5 + p6 + p7 + p8 + p9 +
treatmentA + bfg_FG1_FG2 + bfg_FG1_FG3 + bfg_FG2_FG3, data = sim3a)
summary(m3)
## ----echo = TRUE--------------------------------------------------------------
# Fit model
m3 <- DI(y = "response", prop = 4:12,
treat = "treatment", DImodel = "AV",
extra_formula = ~ (AV) : treatment, data = sim3a)
predict_data <- sim3[c(1, 79, 352), 3:12]
# Only species proportions and treatment is needed
print(predict_data)
# Make prediction
predict(m3, newdata = predict_data)
## -----------------------------------------------------------------------------
# The interval and level parameters can be used to calculate the
# uncertainty around the predictions
# Get confidence interval around prediction
predict(m3, newdata = predict_data, interval = "confidence")
# Get prediction interval around prediction
predict(m3, newdata = predict_data, interval = "prediction")
# The function returns a 95% interval by default,
# this can be changed using the level argument
predict(m3, newdata = predict_data,
interval = "prediction", level = 0.9)
## ----echo = TRUE--------------------------------------------------------------
contr <- list("p1vsp2" = c(1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
"p3vsp5" = c(0, 0, 1, 0, -1, 0, 0, 0, 0, 0, 0, 0),
"p4vsp6" = c(0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 0, 0),
"p7vsp9" = c(0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0))
the_C <- contrasts_DI(m3, contrast = contr)
summary(the_C)
## ----echo = TRUE--------------------------------------------------------------
contr <- list("treatAvsB" = c(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0))
the_C <- contrasts_DI(m3, contrast = contr)
summary(the_C)
## ----echo = TRUE--------------------------------------------------------------
mixA <- c(0.25, 0, 0.25, 0, 0.25, 0, 0.25, 0, 0, 0, 0, 0)
mixB <- c(0, 0.3333, 0, 0.3333, 0, 0.3333, 0, 0, 0, 0, 0, 0)
# We have the proportions of the individual species in the mixtures, however
# we still need to calculate the interaction effect for these communities
contr_data <- data.frame(rbind(mixA, mixB))
colnames(contr_data) <- names(coef(m3))
# Adding the interaction effect of the two mixtures
contr_data$AV <- DI_data_E_AV(prop = 1:9, data = contr_data)$AV
print(contr_data)
# We can now subtract the respective values in each column of the two
# mixtures and get our contrast
my_contrast <- as.matrix(contr_data[1, ] - contr_data[2, ])
rownames(my_contrast) <- "mixAvsB"
the_C <- contrasts_DI(m3, contrast = my_contrast)
summary(the_C)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.