| Title: | Rapid Phenotype Evaluation |
|---|---|
| Description: | A package for evaluating phenotype algorithms. The package develops a diagnostic prediction model using a set of noisy positives and noisy negatives. It can then apply the model to a large cohort to create a set of subjects each with a predicted probability for the health outcome of interest. This cohort can then be used to evaluate phenotype algorithms through the calculation of the necessary performance characteristics - sensitivity, specificity, and positive and negative preditive value. |
| Authors: | Joel N. Swerdel |
| Maintainer: | Joel N. Swerdel <[email protected]> |
| License: | Apache License 2.0 |
| Version: | 2.2.17 |
| Built: | 2026-10-25 11:58:53 UTC |
| Source: | https://github.com/ohdsi/phevaluator |
Compute performance metrics based on a 2-by-2 counts table
computePerformanceMetricsFromCounts(counts)computePerformanceMetricsFromCounts(counts)
counts |
Counts as created by the |
A tibble with the statistics metrics added to the counts table.
Create a parameter object for the function createEvaluationCohort
createCreateEvaluationCohortArgs( xSpecCohortId, daysFromxSpec = 0, xSensCohortId = prevalenceCohortId, prevalenceCohortId, caseCohortId = prevalenceCohortId, caseFirstOccurrenceOnly = TRUE, xSpecCohortSize = 5000, covariateSettings = createDefaultCovariateSettings(excludedCovariateConceptIds = c(), addDescendantsToExclude = TRUE), modelPopulationCohortId = 0, modelPopulationCohortIdStartDay = 0, modelPopulationCohortIdEndDay = 0, inclusionEvaluationCohortId = 0, inclusionEvaluationDaysFromStart = 0, inclusionEvaluationDaysFromEnd = 0, duringInclusionEvaluationOnly = FALSE, exclusionEvaluationCohortId = 0, exclusionEvaluationDaysFromStart = 0, exclusionEvaluationDaysFromEnd = 0, minimumOffsetFromStart = 0, minimumOffsetFromEnd = 30, modelBaseSampleSize = 25000, baseSampleSize = 2e+06, lowerAgeLimit = 0, upperAgeLimit = 120, visitLength = 0, visitType = c(9201, 9202, 9203, 581477, 262), gender = c(8507, 8532), race = 0, ethnicity = 0, startDate = "19001010", endDate = "21000101", falsePositiveNegativeSubjects = 10, modelId = "main", evaluationCohortId = "main", randomVisitTable = "", excludeModelFromEvaluation = FALSE, removeSubjectsWithFutureDates = TRUE, saveEvaluationCohortPlpData = FALSE )createCreateEvaluationCohortArgs( xSpecCohortId, daysFromxSpec = 0, xSensCohortId = prevalenceCohortId, prevalenceCohortId, caseCohortId = prevalenceCohortId, caseFirstOccurrenceOnly = TRUE, xSpecCohortSize = 5000, covariateSettings = createDefaultCovariateSettings(excludedCovariateConceptIds = c(), addDescendantsToExclude = TRUE), modelPopulationCohortId = 0, modelPopulationCohortIdStartDay = 0, modelPopulationCohortIdEndDay = 0, inclusionEvaluationCohortId = 0, inclusionEvaluationDaysFromStart = 0, inclusionEvaluationDaysFromEnd = 0, duringInclusionEvaluationOnly = FALSE, exclusionEvaluationCohortId = 0, exclusionEvaluationDaysFromStart = 0, exclusionEvaluationDaysFromEnd = 0, minimumOffsetFromStart = 0, minimumOffsetFromEnd = 30, modelBaseSampleSize = 25000, baseSampleSize = 2e+06, lowerAgeLimit = 0, upperAgeLimit = 120, visitLength = 0, visitType = c(9201, 9202, 9203, 581477, 262), gender = c(8507, 8532), race = 0, ethnicity = 0, startDate = "19001010", endDate = "21000101", falsePositiveNegativeSubjects = 10, modelId = "main", evaluationCohortId = "main", randomVisitTable = "", excludeModelFromEvaluation = FALSE, removeSubjectsWithFutureDates = TRUE, saveEvaluationCohortPlpData = FALSE )
xSpecCohortId |
The number of the "extremely specific (xSpec)" cohortdefinition id in the cohort table (for noisy positives). |
daysFromxSpec |
Number of days from xSpec condition until analyzed visit |
xSensCohortId |
The number of the "extremely sensitive (xSens)" cohortdefinition id in the cohort table (for noisy negatives). |
prevalenceCohortId |
The number of the cohort definition id to determine the disease prevalence. |
caseCohortId |
The number of the cohort definition id to determine cases in the evaluation cohort |
caseFirstOccurrenceOnly |
Set to true if only the first occurrence per subject in the case cohort is to be used |
xSpecCohortSize |
Maximum xSpec sample size to use in the analysis |
covariateSettings |
A covariateSettings object as generated using createCovariateSettings(). |
modelPopulationCohortId |
The number of the cohort to be used as a base population for the model. If set to 0, the entire database population will be used. |
modelPopulationCohortIdStartDay |
The number of days relative to the mainPopulationCohortId cohort start date to begin including visits. |
modelPopulationCohortIdEndDay |
The number of days relative to the mainPopulationCohortId cohort start date to end including visits. |
inclusionEvaluationCohortId |
The number of the cohort of the population to be used to designate which visits are are eligible to be in the evaluation cohort |
inclusionEvaluationDaysFromStart |
The number of days from the cohort start date of the inclusionEvaluationCohortId to start eligible included visits |
inclusionEvaluationDaysFromEnd |
The number of days from the cohort start date of the inclusionEvaluationCohortId to end eligible included visits |
duringInclusionEvaluationOnly |
Only include visits that are within the cohort start and end dates |
exclusionEvaluationCohortId |
The number of the cohort of the population to be used to designate which visits are NOT eligible to be in the evaluation cohort |
exclusionEvaluationDaysFromStart |
The number of days from the cohort start date of the exclusionEvaluationCohortId to start ineligible included visits |
exclusionEvaluationDaysFromEnd |
The number of days from the cohort start date of the exclusionEvaluationCohortId to end ineligible included visits |
minimumOffsetFromStart |
Minimum number of days to offset for the analysis visit from the start of the observation period |
minimumOffsetFromEnd |
Minimum number of days to offset for the analysis visit from the end of the observation period |
modelBaseSampleSize |
The number of non-xSpec subjects to include in the model |
baseSampleSize |
The maximum number of subjects in the evaluation cohort. |
lowerAgeLimit |
The lower age for subjects in the model. |
upperAgeLimit |
The upper age for subjects in the model. |
visitLength |
The minimum length of index visit for acute outcomes. |
visitType |
The concept_id for the visit type. |
gender |
The gender(s) to be included. |
race |
The race(s) to be included. |
ethnicity |
The ethnicity(s) to be included. |
startDate |
The starting date for including subjects in the model. |
endDate |
The ending date for including subjects in the model. |
falsePositiveNegativeSubjects |
Number of subjects to include for evaluating false positives and negatives |
modelId |
A string used to generate the file names for this model. |
evaluationCohortId |
A string used to generate the file names for this evaluation cohort. |
randomVisitTable |
Table stored in work directory with pre-selected random visits in format of visit_occurrence table |
excludeModelFromEvaluation |
Should subjects used in the model be excluded from the evaluation cohort? |
removeSubjectsWithFutureDates |
For buggy data with data in the future: ignore subjects with dates in the future? |
saveEvaluationCohortPlpData |
Should the large PLP file for the evaluation cohort be saved? To be used for debugging purposes. |
Create an object defining the parameter values.
Create the default covariate settings for acute or chronic diseases
createDefaultCovariateSettings( excludedCovariateConceptIds = c(), includedCovariateIds = c(), includedCovariateConceptIds = c(), addDescendantsToExclude = FALSE, startDayWindow1 = 0, endDayWindow1 = 9999, startDayWindow2 = NULL, endDayWindow2 = NULL, startDayWindow3 = NULL, endDayWindow3 = NULL )createDefaultCovariateSettings( excludedCovariateConceptIds = c(), includedCovariateIds = c(), includedCovariateConceptIds = c(), addDescendantsToExclude = FALSE, startDayWindow1 = 0, endDayWindow1 = 9999, startDayWindow2 = NULL, endDayWindow2 = NULL, startDayWindow3 = NULL, endDayWindow3 = NULL )
excludedCovariateConceptIds |
A list of conceptIds to exclude from featureExtraction. These should include all concept_ids that were used to define the xSpec model (default=NULL) |
includedCovariateIds |
A list of covariate IDs that should be restricted to. |
includedCovariateConceptIds |
A list of covariate concept IDs that should be restricted to. |
addDescendantsToExclude |
Should descendants of excluded concepts also be excluded? (default=FALSE) |
startDayWindow1 |
The day to start time window 1 for feature extraction |
endDayWindow1 |
The day to end time window 1 for feature extraction |
startDayWindow2 |
The day to start time window 2 for feature extraction |
endDayWindow2 |
The day to end time window 2 for feature extraction |
startDayWindow3 |
The day to start time window 3 for feature extraction |
endDayWindow3 |
The day to end time window 3 for feature extraction #' |
Function to create the default covariate settings for acute or chronic diseases
Create the evaluation cohort
createEvaluationCohort( connectionDetails, oracleTempSchema = NULL, tempEmulationSchema = getOption("sqlRenderTempEmulationSchema"), phenotype, analysisName, runDateTime, databaseId, xSpecCohortId, daysFromxSpec = 0, xSensCohortId, prevalenceCohortId, caseCohortId, caseFirstOccurrenceOnly, xSpecCohortSize = 5000, cdmDatabaseSchema, cohortDatabaseSchema, cohortTable, workDatabaseSchema, covariateSettings = createDefaultCovariateSettings(excludedCovariateConceptIds = c(), addDescendantsToExclude = TRUE), modelPopulationCohortId = 0, modelPopulationCohortIdStartDay = 0, modelPopulationCohortIdEndDay = 0, inclusionEvaluationCohortId = 0, inclusionEvaluationDaysFromStart = 0, inclusionEvaluationDaysFromEnd = 0, duringInclusionEvaluationOnly = FALSE, exclusionEvaluationCohortId = 0, exclusionEvaluationDaysFromStart = 0, exclusionEvaluationDaysFromEnd = 0, priorModelToUse = NULL, minimumOffsetFromStart = 365, minimumOffsetFromEnd = 365, modelBaseSampleSize = 25000, baseSampleSize = 2e+06, lowerAgeLimit = 0, upperAgeLimit = 120, visitLength = 0, visitType = c(9201, 9202, 9203, 262, 581477), gender = c(8507, 8532), race = 0, ethnicity = 0, startDate = "19001010", endDate = "21000101", falsePositiveNegativeSubjects = 10, cdmVersion = "5", outFolder = getwd(), exportFolder, modelId = "main", evaluationCohortId = "main", excludeModelFromEvaluation = FALSE, randomVisitTable = "", removeSubjectsWithFutureDates = TRUE, saveEvaluationCohortPlpData = FALSE )createEvaluationCohort( connectionDetails, oracleTempSchema = NULL, tempEmulationSchema = getOption("sqlRenderTempEmulationSchema"), phenotype, analysisName, runDateTime, databaseId, xSpecCohortId, daysFromxSpec = 0, xSensCohortId, prevalenceCohortId, caseCohortId, caseFirstOccurrenceOnly, xSpecCohortSize = 5000, cdmDatabaseSchema, cohortDatabaseSchema, cohortTable, workDatabaseSchema, covariateSettings = createDefaultCovariateSettings(excludedCovariateConceptIds = c(), addDescendantsToExclude = TRUE), modelPopulationCohortId = 0, modelPopulationCohortIdStartDay = 0, modelPopulationCohortIdEndDay = 0, inclusionEvaluationCohortId = 0, inclusionEvaluationDaysFromStart = 0, inclusionEvaluationDaysFromEnd = 0, duringInclusionEvaluationOnly = FALSE, exclusionEvaluationCohortId = 0, exclusionEvaluationDaysFromStart = 0, exclusionEvaluationDaysFromEnd = 0, priorModelToUse = NULL, minimumOffsetFromStart = 365, minimumOffsetFromEnd = 365, modelBaseSampleSize = 25000, baseSampleSize = 2e+06, lowerAgeLimit = 0, upperAgeLimit = 120, visitLength = 0, visitType = c(9201, 9202, 9203, 262, 581477), gender = c(8507, 8532), race = 0, ethnicity = 0, startDate = "19001010", endDate = "21000101", falsePositiveNegativeSubjects = 10, cdmVersion = "5", outFolder = getwd(), exportFolder, modelId = "main", evaluationCohortId = "main", excludeModelFromEvaluation = FALSE, randomVisitTable = "", removeSubjectsWithFutureDates = TRUE, saveEvaluationCohortPlpData = FALSE )
connectionDetails |
connectionDetails created using the function createConnectionDetails in the DatabaseConnector package. |
oracleTempSchema |
DEPRECATED: use |
tempEmulationSchema |
Some database platforms like Oracle and Impala do not truly support temp tables. To emulate temp tables, provide a schema with write privileges where temp tables can be created. |
phenotype |
Name of the phenotype for analysis |
analysisName |
Name of the analysis |
runDateTime |
Starting date and time of the PheValuator run |
databaseId |
Name of the database in the analysis |
xSpecCohortId |
The number of the "extremely specific (xSpec)" cohort definition id in the cohort table (for noisy positives). |
daysFromxSpec |
Number of days allowed from xSpec condition until analyzed visit |
xSensCohortId |
The number of the "extremely sensitive (xSens)" cohort definition id in the cohort table (for noisy negatives). |
prevalenceCohortId |
The number of the cohort definition id to determine the disease prevalence. |
caseCohortId |
The number of the cohort definition id to determine cases in the evaluation cohort |
caseFirstOccurrenceOnly |
Set to true if only the first occurrence per subject in the case cohort is to be used |
xSpecCohortSize |
The recommended xSpec sample size to use in model (default = NULL) |
cdmDatabaseSchema |
The name of the database schema that contains the OMOP CDM instance. Requires read permissions to this database. On SQL Server, this should specifiy both the database and the schema, so for example 'cdm_instance.dbo'. |
cohortDatabaseSchema |
The name of the database schema that is the location where the cohort data used to define the at risk cohort is available. Requires read permissions to this database. |
cohortTable |
The tablename that contains the at risk cohort. The expectation is cohortTable has format of COHORT table: cohort_concept_id, SUBJECT_ID, COHORT_START_DATE, COHORT_END_DATE. |
workDatabaseSchema |
The name of the database schema that is the location where a table can be created and afterwards removed. Requires write permissions to this database. |
covariateSettings |
A covariateSettings object as generated using createCovariateSettings(). |
modelPopulationCohortId |
The number of the cohort to be used as a base population for the model. If set to 0, the entire database population will be used. |
modelPopulationCohortIdStartDay |
The number of days relative to the mainPopulationCohortId cohort start date to begin including visits. |
modelPopulationCohortIdEndDay |
The number of days relative to the mainPopulationCohortId cohort start date to end including visits. |
inclusionEvaluationCohortId |
The number of the cohort of the population to be used to designate which visits are eligible to be in the evaluation cohort |
inclusionEvaluationDaysFromStart |
The number of days from the cohort start date of the inclusionEvaluationCohortId to start eligible included visits |
inclusionEvaluationDaysFromEnd |
The number of days from the cohort start date of the inclusionEvaluationCohortId to end eligible included visits |
duringInclusionEvaluationOnly |
Only include visits that are within the cohort start and end dates |
exclusionEvaluationCohortId |
The number of the cohort of the population to be used to designate which visits are NOT eligible to be in the evaluation cohort |
exclusionEvaluationDaysFromStart |
The number of days from the cohort start date of the exclusionEvaluationCohortId to start ineligible included visits |
exclusionEvaluationDaysFromEnd |
The number of days from the cohort start date of the exclusionEvaluationCohortId to end ineligible included visits |
priorModelToUse |
folder where a previously developed model to use in analysis will be found |
minimumOffsetFromStart |
Minimum number of days to offset for the analysis visit from the start of the observation period |
minimumOffsetFromEnd |
Minimum number of days to offset for the analysis visit from the end of the observation period |
modelBaseSampleSize |
The number of non-xSpec subjects to include in the model |
baseSampleSize |
The maximum number of subjects in the evaluation cohort. |
lowerAgeLimit |
The lower age for subjects in the model. |
upperAgeLimit |
The upper age for subjects in the model. |
visitLength |
The minimum length of index visit for acute outcomes. |
visitType |
The concept_id for the visit type. |
gender |
The gender(s) to be included. |
race |
The race(s) to be included. |
ethnicity |
The ethnicity(s) to be included. |
startDate |
The starting date for including subjects in the model. |
endDate |
The ending date for including subjects in the model. |
falsePositiveNegativeSubjects |
Number of subjects to include for evaluating false positives and negatives |
cdmVersion |
The CDM version of the database. |
outFolder |
The folder where the output files will be written. |
exportFolder |
The folder where the csv output files will be written. |
modelId |
A string used to generate the file names for this model. |
evaluationCohortId |
A string used to generate the file names for this evaluation cohort. |
excludeModelFromEvaluation |
Should subjects used in the model be excluded from the evaluation cohort? |
randomVisitTable |
Table stored in work directory with pre-selected random visits in format of visit_occurrence table |
removeSubjectsWithFutureDates |
For buggy data with data in the future: ignore subjects with dates in the future? |
saveEvaluationCohortPlpData |
Should the large PLP file for the evaluation cohort be saved? To be used for debugging purposes. |
Fits a diagnostic prediction model, and uses it to create an evaluation cohort with probabilities for the health outcome of interest.
Create a PheValuator analysis specification
createPheValuatorAnalysis( analysisId, description, createEvaluationCohortArgs, testPhenotypeAlgorithmArgs )createPheValuatorAnalysis( analysisId, description, createEvaluationCohortArgs, testPhenotypeAlgorithmArgs )
analysisId |
An integer that will be used later to refer to this specific set of analysis choices. |
description |
A short description of the analysis. |
createEvaluationCohortArgs |
An object representing the arguments to be used when calling
the |
testPhenotypeAlgorithmArgs |
Should the |
Create a set of analysis choices, to be used with the runPheValuatorAnalyses function.
Create a parameter object for the function testPhenotypeAlgorithm
createTestPhenotypeAlgorithmArgs( cutPoints = c("EV"), phenotypeCohortId, washoutPeriod = 0, splayPrior = 7, splayPost = 7 )createTestPhenotypeAlgorithmArgs( cutPoints = c("EV"), phenotypeCohortId, washoutPeriod = 0, splayPrior = 7, splayPost = 7 )
cutPoints |
A list of threshold predictions for the evaluations. Include "EV"for the expected value |
phenotypeCohortId |
The ID of the cohort to evaluate in the specified cohort table. |
washoutPeriod |
The mininum required continuous observation time prior to indexdate for subjects within the cohort to test (Default = 0). |
splayPrior |
The number of days to allow for test phenotype visit date prior to evaluation date |
splayPost |
The number of days to allow for test phenotype visit date after evaluation date |
Create an object defining the parameter values.
Load a list of objects of type pheValuatorAnalysis from file. The file is in JSON format.
loadPheValuatorAnalysisList(file)loadPheValuatorAnalysisList(file)
file |
The name of the file |
A list of objects of type pheValuatorAnalysis.
Run a list of analyses
runPheValuatorAnalyses( phenotype, cohortDefinitionSet = data.frame(), analysisName = "Main", runDateTime = format(Sys.time(), "%b %d %Y %X"), connectionDetails, oracleTempSchema = NULL, tempEmulationSchema = getOption("sqlRenderTempEmulationSchema"), cdmDatabaseSchema, cohortDatabaseSchema = cdmDatabaseSchema, cohortTable = "cohort", workDatabaseSchema = cdmDatabaseSchema, databaseId = cdmDatabaseSchema, cdmVersion = 5, outputFolder, priorModelToUse = NULL, pheValuatorAnalysisList )runPheValuatorAnalyses( phenotype, cohortDefinitionSet = data.frame(), analysisName = "Main", runDateTime = format(Sys.time(), "%b %d %Y %X"), connectionDetails, oracleTempSchema = NULL, tempEmulationSchema = getOption("sqlRenderTempEmulationSchema"), cdmDatabaseSchema, cohortDatabaseSchema = cdmDatabaseSchema, cohortTable = "cohort", workDatabaseSchema = cdmDatabaseSchema, databaseId = cdmDatabaseSchema, cdmVersion = 5, outputFolder, priorModelToUse = NULL, pheValuatorAnalysisList )
phenotype |
Name of the phenotype for analysis |
cohortDefinitionSet |
Data.frame of cohorts must include columns cohortId, cohortName, json, sql - should include all cohort definitions needed to replicate PheValuator analysis |
analysisName |
Name of the analysis |
runDateTime |
Starting date and time of the PheValuator run |
connectionDetails |
An R object of type |
oracleTempSchema |
DEPRECATED: use |
tempEmulationSchema |
Some database platforms like Oracle and Impala do not truly support temp tables. To emulate temp tables, provide a schema with write privileges where temp tables can be created. |
cdmDatabaseSchema |
The name of the database schema that contains the OMOP CDM instance. Requires read permissions to this database. On SQL Server, this should specifiy both the database and the schema, so for example 'cdm_instance.dbo'. |
cohortDatabaseSchema |
The name of the database schema that is the location where the cohort data used to define the at risk cohort is available. Requires read permissions to this database. |
cohortTable |
The tablename that contains the at risk cohort. The expectation is cohortTable has format of COHORT table: cohort_concept_id, SUBJECT_ID, COHORT_START_DATE, COHORT_END_DATE. |
workDatabaseSchema |
The name of the database schema that is the location where a table can be created and afterwards removed. Requires write permissions to this database. |
databaseId |
Name of the database in the analysis |
cdmVersion |
Define the OMOP CDM version used: currently supports "5". |
outputFolder |
Name of the folder where all the outputs will be written to. |
priorModelToUse |
folder where a previously developed model to use in analysis will be found |
pheValuatorAnalysisList |
A list of objects of type |
Run a list of analyses.
A data frame specifying where the constructed evaluation cohort and phenotype evaluation results can be found in the local file system.
Write a list of objects of type pheValuatorAnalysis to file. The file is in JSON format.
savePheValuatorAnalysisList(pheValuatorAnalysisList, file)savePheValuatorAnalysisList(pheValuatorAnalysisList, file)
pheValuatorAnalysisList |
The pheValuatorAnalysis list to be written to file |
file |
The name of the file where the results will be written |
Summarize results of PheValuator analyses
summarizePheValuatorAnalyses(referenceTable, outputFolder)summarizePheValuatorAnalyses(referenceTable, outputFolder)
referenceTable |
A reference table as created using |
outputFolder |
The output folder used when calling |
A data frame of results.
Test phenotype algorithms
testPhenotypeAlgorithm( phenotype, analysisName, runDateTime, connectionDetails, cutPoints = c("EV"), outFolder, exportFolder, evaluationCohortId = "main", phenotypeCohortId, cdmDatabaseSchema, databaseId, cohortDatabaseSchema, cohortTable, washoutPeriod = 0, splayPrior = 7, splayPost = 7 )testPhenotypeAlgorithm( phenotype, analysisName, runDateTime, connectionDetails, cutPoints = c("EV"), outFolder, exportFolder, evaluationCohortId = "main", phenotypeCohortId, cdmDatabaseSchema, databaseId, cohortDatabaseSchema, cohortTable, washoutPeriod = 0, splayPrior = 7, splayPost = 7 )
phenotype |
Name of the phenotype for analysis |
analysisName |
Name of the analysis |
runDateTime |
Starting date and time of the PheValuator run |
connectionDetails |
ConnectionDetails created using the function createConnectionDetails in the DatabaseConnector package. |
cutPoints |
A list of threshold predictions for the evaluations. Include "EV" for the expected value |
outFolder |
The folder where the cohort evaluation output files are written |
exportFolder |
The folder where the csv output files will be written. |
evaluationCohortId |
A string used to generate the file names for the evaluation cohort. |
phenotypeCohortId |
The ID of the cohort to evaluate in the specified cohort table. |
cdmDatabaseSchema |
The name of the database schema that contains the OMOP CDM instance. Requires read permissions to this database. On SQL Server, this should specifiy both the database and the schema, so for example 'cdm_instance.dbo'. |
databaseId |
Name of the database in the analysis |
cohortDatabaseSchema |
The name of the database schema that is the location where the cohort data used to define the at risk cohort is available. Requires read permissions to this database. |
cohortTable |
The tablename that contains the at risk cohort. The expectation is cohortTable has format of COHORT table: cohort_concept_id, SUBJECT_ID, COHORT_START_DATE, COHORT_END_DATE. |
washoutPeriod |
The mininum required continuous observation time prior to index date for subjects within the cohort to test (Default = 0). |
splayPrior |
The number of days to allow for test phenotype visit date prior to evaluation date |
splayPost |
The number of days to allow for test phenotype visit date after evaluation date |
This function will perform the phenotype algorithm evaluation using the evaluation cohort returned from createEvalCohort and the phenotype algorithm cohort specified
A dataframe with the results from the phenotype algorithm evaluation.
If 0.5 is included as a cutpoint, the data frame will have an attribute called 'misses', a dataframe with a sample of subject ids for TPs, FPs, TNs, and FNs for the 50 percent and over prediction threshold.