Nothing
## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, include = FALSE---------------------------------------------------
library(bdots)
# Make smaller for cran
cohort_unrelated$Subject <- as.numeric(cohort_unrelated$Subject)
cohort_unrelated <- as.data.table(cohort_unrelated)
cohort_unrelated <- cohort_unrelated[Subject < 10, ]
## -----------------------------------------------------------------------------
library(bdots)
fit <- bdotsFit(data = cohort_unrelated,
subject = "Subject",
time = "Time",
y = "Fixations",
group = c("DB_cond", "LookType"),
curveType = doubleGauss(concave = TRUE),
cores = 2)
## -----------------------------------------------------------------------------
doubleGauss
## -----------------------------------------------------------------------------
## Return a unique subject/group permutation
dat <- cohort_unrelated[Subject == 1 & DB_cond == 50 & LookType == "Cohort", ]
dat
## -----------------------------------------------------------------------------
## See return value
doubleGauss(dat = dat, y = "Fixations", time = "Time", concave = TRUE)
## -----------------------------------------------------------------------------
doubleGauss2 <- function (dat, y, time, params = NULL, concave = TRUE, ...) {
if (is.null(params)) {
## Instead of defining our own, just reuse the one in bdots
params <- bdots:::dgaussPars(dat, y, time, concave)
}
else {
if (length(params) != 6)
stop("doubleGauss requires 6 parameters be specified for refitting")
if (!all(names(params) %in% c("mu", "ht", "sig1", "sig2",
"base1", "base2"))) {
stop("doubleGauss parameters for refitting must be correctly labeled")
}
}
## Here, we use Fixations and Time directly
ff <- bquote(Fixations ~ (Time < mu) * (exp(-1 * (Time - mu)^2 /
(2 * sig1^2)) * (ht - base1) + base1) + (mu <= Time) *
(exp(-1 * (Time - mu)^2/(2 * sig2^2)) * (ht - base2) + base2))
return(list(formula = ff, params = params))
}
same_fit_different_day <- bdotsFit(data = cohort_unrelated,
subject = "Subject",
time = "Time",
y = "Fixations",
group = c("DB_cond", "LookType"),
curveType = doubleGauss2(concave = TRUE),
cores = 2)
## -----------------------------------------------------------------------------
## Original fit
head(coef(fit))
## "New" fit
head(coef(same_fit_different_day))
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.