Provides a measure of the chances of following particular paths through the decision tree.
Usage
branch_joint_probs(model, ...)
# S3 method for transmat
branch_joint_probs(model, nodes = NA, ...)
# S3 method for dat_long
branch_joint_probs(model, nodes, ...)
# S3 method for default
branch_joint_probs(model, nodes, ...)
Arguments
- model
Branch conditional probabilities (matrix)
- ...
Additional parameters
- nodes
Which nodes to return; default to all
Details
These probabilities could be used to weight branch costs or QALYs to indicate the relative contribution to the total expected value.
Examples
model <-
define_model(
transmat =
list(prob =
matrix(data = c(NA, 0.5, 0.5, NA, NA, NA, NA,
NA, NA, NA, 0.1, 0.9, NA, NA,
NA, NA, NA, NA, NA, 0.9, 0.1),
nrow = 3,
byrow = TRUE),
vals =
matrix(data = c(NA, 1, 5, NA, NA, NA, NA,
NA, NA, NA, 1, 9, NA, NA,
NA, NA, NA, NA, NA, 9, 1),
nrow = 3,
byrow = TRUE)))
model
#> $prob
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> [1,] NA 0.5 0.5 NA NA NA NA
#> [2,] NA NA NA 0.1 0.9 NA NA
#> [3,] NA NA NA NA NA 0.9 0.1
#>
#> $vals
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> [1,] NA 1 5 NA NA NA NA
#> [2,] NA NA NA 1 9 NA NA
#> [3,] NA NA NA NA NA 9 1
#>
#> attr(,"class")
#> [1] "transmat" "list"
branch_joint_probs(model)
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> [1,] NA 0.5 0.5 NA NA NA NA
#> [2,] NA NA NA 0.05 0.45 NA NA
#> [3,] NA NA NA NA NA 0.45 0.05
# weighted vals
branch_joint_probs(model)*model$vals
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> [1,] NA 0.5 2.5 NA NA NA NA
#> [2,] NA NA NA 0.05 4.05 NA NA
#> [3,] NA NA NA NA NA 4.05 0.05
# long data format
df <-
data.frame(
from = c(1,2,1),
to = c(2,3,4),
prob = c(0.1,0.5,0.9),
vals = c(1,2,3))
mod <- define_model(dat_long = df)
branch_joint_probs(mod, nodes = 4)
#> [[1]]
#> [1] 1.0 0.9
#>
#0.9
branch_joint_probs(mod, nodes = 3)
#> [[1]]
#> [1] 1.0 0.5 0.1
#>
#0.1*0.5
branch_joint_probs(mod, nodes = 3)[[1]] |> cumprod()
#> [1] 1.00 0.50 0.05