Skip to content
Snippets Groups Projects
Commit 26f41388 authored by Sebastian Henz's avatar Sebastian Henz
Browse files

Rename the mixture_effect column to effect

parent c7d595c2
No related branches found
No related tags found
1 merge request!27Some bugfixes and more flexible concentration lengths
......@@ -63,9 +63,9 @@
#' conc_a <- c(0, 0.03, 0.3, 3)
#' conc_b <- rep(5.5, 4)
#' prop_ca <- 0.75
#' effect_a <- predict_mixture(toxicant_a , toxicant_b , conc_a, conc_b, prop_ca)
#' effect_b <- predict_mixture(toxicant_b , toxicant_a , conc_b, conc_a, prop_ca)
#' identical(effect_a$mixture_effect, effect_b$mixture_effect)
#' mix_a <- predict_mixture(toxicant_a , toxicant_b , conc_a, conc_b, prop_ca)
#' mix_b <- predict_mixture(toxicant_b , toxicant_a , conc_b, conc_a, prop_ca)
#' identical(mix_a$effect, mix_b$effect)
#'
#' @export
predict_mixture <- function(model_a,
......@@ -129,11 +129,11 @@ predict_mixture <- function(model_a,
proportion_sam <- 1 - proportion_ca
stress_tox_total <- stress_tox_ca * proportion_ca + stress_tox_sam * proportion_sam
stress_total <- stress_tox_total + sys_total
mixture_effect <- stress_to_effect(stress_total) * effect_max
effect <- stress_to_effect(stress_total) * effect_max
# unname() to remove the name when concentration_a is a single number.
mixture_effect <- unname(mixture_effect)
data.frame(concentration_a, concentration_b, mixture_effect)
# Setting row.names to NULL to prevent row names when one of the
# concentrations is a single number.
data.frame(concentration_a, concentration_b, effect, row.names = NULL)
}
......
......@@ -65,8 +65,8 @@ predict_mixture(
conc_a <- c(0, 0.03, 0.3, 3)
conc_b <- rep(5.5, 4)
prop_ca <- 0.75
effect_a <- predict_mixture(toxicant_a , toxicant_b , conc_a, conc_b, prop_ca)
effect_b <- predict_mixture(toxicant_b , toxicant_a , conc_b, conc_a, prop_ca)
identical(effect_a$mixture_effect, effect_b$mixture_effect)
mix_a <- predict_mixture(toxicant_a , toxicant_b , conc_a, conc_b, prop_ca)
mix_b <- predict_mixture(toxicant_b , toxicant_a , conc_b, conc_a, prop_ca)
identical(mix_a$effect, mix_b$effect)
}
......@@ -40,7 +40,7 @@ test_that("results have not changed", {
c(0, 0.01, 0.1, 1, 7, 15),
rep(5, 6),
0.3
)$mixture_effect
)$effect
reference <- c(88.574578, 84.361552, 80.633762, 56.730550, 2.882718, 0)
expect_equal(new, reference, tolerance = 1e-5)
......@@ -51,7 +51,7 @@ test_that("results have not changed", {
c(0, 0.01, 0.1, 1, 7, 15),
c(0, 0.02, 0.2, 2, 14, 30),
0.3
)$mixture_effect
)$effect
reference <- c(88.2698383, 79.9617127, 78.1574808, 65.7999834, 0.3861678, 0)
expect_equal(new, reference, tolerance = 1e-5)
......@@ -63,7 +63,7 @@ test_that("results have not changed", {
c(0, 0.02, 0.2, 2, 14, 30),
0.3,
42
)$mixture_effect
)$effect
reference <- c(88.2698383, 79.9617127, 78.1574808, 65.7999834, 0.3861678, 0) * 0.42
expect_equal(new, reference, tolerance = 1e-5)
})
......@@ -73,8 +73,8 @@ test_that("predictions are symmetric", {
conc_a <- c(0, 10^seq(log10(0.001), log10(40), length.out = 50))
conc_b <- rep(3.5, length(conc_a))
prop_ca <- 0.8
effect_12 <- predict_mixture(model_a, model_b, conc_a, conc_b, prop_ca)$mixture_effect
effect_21 <- predict_mixture(model_b, model_a, conc_b, conc_a, prop_ca)$mixture_effect
effect_12 <- predict_mixture(model_a, model_b, conc_a, conc_b, prop_ca)$effect
effect_21 <- predict_mixture(model_b, model_a, conc_b, conc_a, prop_ca)$effect
expect_equal(effect_12, effect_21)
})
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment