Description Usage Arguments Details Value References Examples
This function uses a non-parametric approach to determine an interval around the intersection of the two distributions of individuals without (0) and with (1) the targeted condition. The Uncertain Interval is generally defined as an interval below and above the intersection, where the densities of the two distributions of patients with and without the targeted condition are about equal. These test scores are considered as inconclusive for the decision for or against the targeted condition. The interval is restricted both by a maximum UI.Se of the test scores within the uncertain interval (UI.Se) and by a maximum specificity of the test scores within the uncertain interval (UI.Sp).
1 2 3 4 5 6 7 8 9 10 | ui.nonpar(
ref,
test,
UI.Se = 0.55,
UI.Sp = 0.55,
intersection = NULL,
return.first = T,
select = c("nearest", "limited"),
direction = c("auto", "<", ">")
)
|
ref |
The reference standard. A column in a data frame or a vector indicating the classification by the reference test. The reference standard must be coded either as 0 (absence of the condition) or 1 (presence of the condition) |
test |
The index test or test under evaluation. A column in a dataset or vector indicating the test results in a continuous scale. |
UI.Se |
(default = .55). The sensitivity of the test scores within the uncertain interval is either limited to this value or is the nearest to this value. A value <= .5 is useless. |
UI.Sp |
(default = .55). The specificity of the test scores within the uncertain interval is either limited to this value or is the nearest to this value. A value <= .5 is useless. |
intersection |
(default = NULL) When NULL, the intersection is calculated
with |
return.first |
(default = TRUE) Return only the widest possible interval, given the restrictions. When FALSE all calculated intervals with their sensitivity and specificity are returned. NOTE: This function does not always find a suitable interval and can return a vector of NULL values. |
select |
(default = 'nearest') If 'nearest', sensitivity and specificity of the uncertain interval are nearest UI.Se and UI.Sp respectively. When 'limited' the solutions have an uncertain interval with a sensitivity and specificity limited by UI.Se and UI.Sp respectively. |
direction |
Default = 'auto'. Direction when comparing controls with cases. Often, the controls have lower values than the cases (direction = '<'). When 'auto', mean comparison is used to determine the direction. |
This function can be used for a test without a defined distribution of the continuous test scores. The Uncertain Interval is generally defined as an interval below and above the intersection, where the densities of the two distributions of patients with and without the targeted condition are about equal. This function uses for the definition of the uncertain interval a sensitivity and specificity of the uncertain test scores below a desired value (default .55).
This essentially non-parametric function finds the best possible solution for a sample. This function can be used for test with continuous scores or for test with about twenty or more ordered test scores. The Uncertain Interval is defined as an interval below and above the intersection, with a sensitivity and specificity nearby or below a desired value (default .55).
In its core, the ui.nonpar
function is non-parametric, but it uses the
gaussian kernel for estimating the intersection between the two distributions.
Always check whether your results are within reason. If the results are
unsatisfactory, first check on the intersection. The density
function
allows for other approximations than gaussian. Another estimate can be
obtained by using a more suitable kernel in the density
function. The
parameter intersection
can be used to assign the new estimate to the
uncertain.interval
method.
Furthermore, only a single intersection is assumed (or a second intersection where the overlap is negligible). It should be noted that in most cases, a test with more than one intersection with non-negligible overlap is problematic and difficult to apply.
The Uncertain interval method is developed for continuous distributions, although it can be applied to ordered tests with distinguishable distributions. When a test is used with less than 20 discernible values, a warning is issued. The method may work satisfactorily, but results should always be checked carefully.
In general, when estimating decision thresholds, a sample of sufficient size should be used. It is recommended to use at least a sample of 100 patients with the targeted condition, and a 'healthy' sample (without the targeted condition) of the same size or larger.
The Uncertain interval method is not always capable to deliver results, especially when select == 'limited'. Clearly, when there is no overlap between the two distributions, there cannot be an uncertain interval. A very small interval of overlap can also limit the possibilities to find a solution. When there is no solution found, a vector of NA values is returned.
A data.frame
of
Lower bound of the Uncertain interval.
Upper bound of the Uncertain interval.
Count of false negatives within the Uncertain interval.
Count of true positives within the Uncertain interval.
Count of true negatives within the Uncertain interval.
Count of false positives within the Uncertain interval.
Sensitivity of the test scores within the Uncertain interval.
Specificity of the test scores within the Uncertain interval.
Only a single row is returned when parameter
return.first
= TRUE (default).
Landsheer, J. A. (2016). Interval of Uncertainty: An Alternative Approach for the Determination of Decision Thresholds, with an Illustrative Application for the Prediction of Prostate Cancer. PloS One, 11(11), e0166007.
Landsheer, J. A. (2018). The Clinical Relevance of Methods for Handling Inconclusive Medical Test Results: Quantification of Uncertainty in Medical Decision-Making and Screening. Diagnostics, 8(2), 32. https://doi.org/10.3390/diagnostics8020032
1 2 3 4 5 6 7 8 9 |
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.