optim_roc_threshold {phylosamp} | R Documentation |
Find optimal ROC threshold
Description
This function takes the dataframe output of the gendist_roc_format()
function and finds the optimal threshold
of sensitivity and specificity by minimizing the distance to the top left corner of the Receiver Operating Characteristic (ROC) curve
Usage
optim_roc_threshold(roc)
Arguments
roc |
a dataframe produced by the |
Value
vector containing optimal thresholds of sensitivity and specificity
Author(s)
Shirlee Wohl, John Giles, and Justin Lessler
See Also
Other ROC functions:
gendist_roc_format()
Examples
# ebola-like pathogen
R <- 1.5
mut_rate <- 1
# use simulated generation distributions
data("genDistSim")
mean_gens_pdf <- as.numeric(genDistSim[genDistSim$R == R, -(1:2)])
# get theoretical genetic distance dist based on mutation rate and generation parameters
dists <- as.data.frame(gendist_distribution(mut_rate = mut_rate,
mean_gens_pdf = mean_gens_pdf,
max_link_gens = 1))
# reshape dataframe for plotting
dists <- reshape2::melt(dists,
id.vars = "dist",
variable.name = "status",
value.name = "prob")
# get sensitivity and specificity using the same paramters
roc_calc <- gendist_roc_format(cutoff = 1:(max(dists$dist)-1),
mut_rate = mut_rate,
mean_gens_pdf = mean_gens_pdf)
# get the optimal value for the ROC plot
optim_point <- optim_roc_threshold(roc_calc)
[Package phylosamp version 1.0.1 Index]