Sure thing.
It fits the first three models, but returns that C stack trace I posted before on the fourth call. You can check the brm
fitted models within the objects returned by bnec
with out$fit
. The actual non-linear brmsformula
being fitted in the example below and the vignette can be seen with bayesnec:::bf_nec3param_deflt
for non-binomial data, and bayesnec:::bf_nec3param_binom
for binomial data.
remotes::install_github("open-AIMS/bayesnec")
library(bayesnec)
library(tidyverse)
binom_data <- "https://pastebin.com/raw/zfrUha88" %>%
read.table(header = TRUE, dec = ",", stringsAsFactors = FALSE) %>%
dplyr::rename(raw_x = raw.x) %>%
dplyr::mutate(raw_x = as.numeric(as.character(raw_x)))
set.seed(333)
out <- bnec(data = binom_data, x_var = "raw_x",
y_var = "suc", model = "nec3param",
trials_var = "tot")
prop_data <- "https://pastebin.com/raw/123jq46d" %>%
read.table(header = TRUE, dec = ",", stringsAsFactors = FALSE) %>%
dplyr::rename(raw_x = raw.x) %>%
dplyr::mutate(raw_x = log(as.numeric(as.character(raw_x)) + 1),
resp = as.numeric(as.character(resp)))
set.seed(333)
out <- bnec(data = prop_data, x_var = "raw_x",
y_var = "resp", model = "nec3param")
count_data <- "https://pastebin.com/raw/ENgNSgf7" %>%
read.table(header = TRUE, dec = ",", stringsAsFactors = FALSE) %>%
dplyr::rename(raw_x = raw.x) %>%
dplyr::mutate(raw_x = as.numeric(as.character(raw_x)))
set.seed(333)
out <- bnec(data = count_data, x_var = "raw_x",
y_var = "count", model = "nec3param")
measure_data <- "https://pastebin.com/raw/pWeS6x0n" %>%
read.table(header = TRUE, dec = ",", stringsAsFactors = FALSE) %>%
dplyr::rename(raw_x = raw.x) %>%
dplyr::mutate(dplyr::across(where(is.character), as.numeric))
set.seed(333)
out <- bnec(data = measure_data, x_var = "raw_x",
y_var = "measure", model = "nec3param")