Title: | ROC Surface Analysis Under the Three-Class Problems |
---|---|
Description: | Receiver Operating Characteristic (ROC) analysis is performed assuming samples are from the proposed distributions. In addition, the volume under the ROC surface and true positive fractions values are evaluated by ROC surface analysis. |
Authors: | Ertan Akgenç [cre, aut, cph] (https://www.researchgate.net/profile/Ertan-Akgenc), Coşkun Kuş [aut, ctb] (https://www.selcuk.edu.tr/Person/Detail/coskun) |
Maintainer: | Ertan Akgenç <[email protected]> |
License: | GPL-3 |
Version: | 0.1.1 |
Built: | 2024-11-20 04:50:43 UTC |
Source: | https://github.com/ertansu/rocsurf |
ROC surface analysis is performed under the three-class classification problems. The volume under the ROC surface and true positive fractions values are evaulated by ROC surface analysis.
dG(x, alpha, beta) dW(x, alpha, beta) dL(z, alpha, beta) pG(x, alpha, beta) pW(y, alpha, beta) pL(y, alpha, beta) qG(p, alpha, beta) qW(p, alpha, beta) qL(p, alpha, beta) rG(n, alpha, beta) rW(n, alpha, beta) rL(n, alpha, beta) r.tc_vus( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") ) r.tc_index( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), init_index = c(x, y), model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") ) r.tc_graph( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), empirical = TRUE, model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") )
dG(x, alpha, beta) dW(x, alpha, beta) dL(z, alpha, beta) pG(x, alpha, beta) pW(y, alpha, beta) pL(y, alpha, beta) qG(p, alpha, beta) qW(p, alpha, beta) qL(p, alpha, beta) rG(n, alpha, beta) rW(n, alpha, beta) rL(n, alpha, beta) r.tc_vus( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") ) r.tc_index( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), init_index = c(x, y), model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") ) r.tc_graph( x, y, z, init_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), true_param = c(alpha1 = 1, beta1 = 1, alpha2 = 1, beta2 = 1, alpha3 = 1, beta3 = 1), empirical = TRUE, model = c("GWL", "GGW", "WGW", "WWW", "GGG", "LLL"), method = c("MLE", "AD", "CvM", "LSE", "WLSE", "TRUE") )
x , y , z
|
vector of quantiles. |
alpha |
shape parameter. |
beta |
scale parameter. |
p |
vector of probabilities. |
n |
number of observations. If |
init_param |
initial paremeter values for the estimation method. |
true_param |
true parameter values. |
model |
selected model. The default value for the model is "GWL". |
method |
estimation method. The default value for the method is "MLE". |
init_index |
initial index value for the optimization calculation. |
empirical |
empirical must be TRUE or FALSE. |
alpha1 |
shape parameter of distribution of first sample. |
beta1 |
scale parameter of distribution of first sample. |
alpha2 |
shape parameter of distribution of second sample. |
beta2 |
scale parameter of distribution of second sample. |
alpha3 |
location parameter of distribution of third sample. |
beta3 |
scale parameter of distribution of third sample. |
The Gamma, Weibull, and Logistic distributions are widely used in statistical modeling and analysis. Below are the descriptions of their probability density functions (PDF), cumulative distribution functions (CDF), and quantile functions, including their parameter constraints.
Gamma Distribution
The Gamma distribution is a continuous probability distribution characterized
by its shape () and scale (
) parameters. It is
commonly used to model waiting times or lifetimes of objects.
Probability Density Function (PDF):
,where and
.
Cumulative Distribution Function (CDF):
,where is the lower incomplete Gamma function.
Quantile Function:
The quantile function is the inverse of the CDF, denoted as
,where
.
Weibull Distribution
The Weibull distribution is used in reliability analysis and failure time
analysis, characterized by its shape () and scale (
)
parameters.
Probability Density Function (PDF):
,where , and
.
Cumulative Distribution Function (CDF):
,where , and
.
Quantile Function:
,where ,
, and
.
Logistic Distribution
The Logistic distribution is used for growth models and logistic regression,
characterized by its location () and scale (
)
parameters.
Probability Density Function (PDF):
,where , and
.
Cumulative Distribution Function (CDF):
,where , and
.
Quantile Function:
,where ,
, and
.
Additionally, the estimation methods Anderson-Darling "AD", Cramér-von Mises "CvM", least squares "LS" and weighted least squares "WLS" as well as the "TRUE" option for the true value, are available. Please note that the default value for the method parameter is maximum likelihood "ML" estimation. Also, models such as "GWL," "WWW," and "WGW" are defined for evaluating ROC surface analysis under three-class classification problems.
The cut-off point values corresponding to the generalized Youden's J index (J), The Perfection method (PM), The Maximum Volume (MV), and the newly proposed indices (NI, M) are provided.
dG
gives the probability density function of Gamma
Distribution.
dW
gives the probability density function of Weibull
Distribution.
dL
gives the probability density function of Logistic
Distribution.
pG
gives the cumulative density function of
Gamma Distribution.
pW
gives the cumulative density function of
Weibull Distribution.
pL
gives the cumulative density function of
Logistic Distribution.
qG
gives the quantile function of
Gamma Distribution.
qW
gives the quantile function of
Weibull Distribution.
qL
gives the quantile function of
Logistic Distribution.
rG
gives random numbers from Gamma Distribution.
rW
gives random numbers from Weibull Distribution.
rL
gives random numbers from Logistic Distribution.
r.tc_vus
gives the Volume Under the Surface (VUS) when the
data conforms to the proposed three distributions.
r.tc_index
gives index values when the
data conforms to the proposed three distributions.
r.tc_graph
gives the ROC curve when the data conforms to the
proposed three distributions.
Akgenç, E., and Kuş, C., 2023, Statistical Inference for ROC Surface Analysis Under the Three-Class Problems, 7th International Congress of Researchers, Statisticians and Young Statisticians (IRSYSC-2023).
B. R. Mosier and L. E. Bantis., 2021, Estimation and construction of confidence intervals for biomarker cutoff-points under the shortest euclidean distance from the roc surface to the perfection corner, Statistics in medicine, 40(20):4522–4539. doi:10.1002/sim.9077
G. Jameson., 2016, The incomplete gamma functions., The Mathematical Gazette, 100(548):298–306. doi:10.1017/mag.2016.67
T. Dong., 2014, Selected Topics on Statistical Methods for Three and Multiple Class Diagnostic Studies, State University of New York at Buffalo.
J. Luo and C. Xiong., 2013, Youden index and associated cut-points for three ordinal diagnostic groups, Communications in Statistics-Simulation and Computation, 42(6):1213–1234. doi:10.1080/03610918.2012.661906
F. Edition, A. Papoulis, and S. U. Pillai., 2002, Pobability, random variables, and stochastic processes, McGraw-Hill Europe: New York, NY, USA.
A. J. Hallinan Jr., 1993, A review of the weibull distribution, Journal of Quality Technology, 25(2):85–93. doi:10.1080/00224065.1993.11979431
N. Balakrishnan., 1991, Handbook of the logistic distribution, CRC Press.
dG(c(1,2,3,4,5,200,1000),alpha=6,beta=.8) dW(c(1,2,3,4,5,200,10000),alpha=1,beta=2) dL(c(1,2,3,4,5,200),alpha=1,beta=.1) pG(c(.5,1,2,3,4,25),alpha=6,beta=.8) pW(c(.5,1,2,3,4,100),alpha=1,beta=2) pL(c(.5,1,2),alpha=1,beta=.1) qG(c(.9971,0.5,0.3),alpha=6,beta=.8) qW(c(.9971,0.5,0.3),alpha=1,beta=2) qL(c(.9971,0.5,0.3),alpha=1,beta=.1) rG(10,alpha=6,beta=.8) rW(10,alpha=1,beta=2) rL(10,alpha=1,beta=.1) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_vus(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2,beta2=2, alpha3=6,beta3=9), model=c("WGW"), method=c("MLE")) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_index(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2, beta2=2,alpha3=6,beta3=9), init_index=c(median(x),median(y)), model=c("WGW"), method=c("MLE")) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_graph(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2, beta2=2,alpha3=6,beta3=9), empirical=FALSE,model=c("WGW"), method=c("MLE"))
dG(c(1,2,3,4,5,200,1000),alpha=6,beta=.8) dW(c(1,2,3,4,5,200,10000),alpha=1,beta=2) dL(c(1,2,3,4,5,200),alpha=1,beta=.1) pG(c(.5,1,2,3,4,25),alpha=6,beta=.8) pW(c(.5,1,2,3,4,100),alpha=1,beta=2) pL(c(.5,1,2),alpha=1,beta=.1) qG(c(.9971,0.5,0.3),alpha=6,beta=.8) qW(c(.9971,0.5,0.3),alpha=1,beta=2) qL(c(.9971,0.5,0.3),alpha=1,beta=.1) rG(10,alpha=6,beta=.8) rW(10,alpha=1,beta=2) rL(10,alpha=1,beta=.1) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_vus(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2,beta2=2, alpha3=6,beta3=9), model=c("WGW"), method=c("MLE")) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_index(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2, beta2=2,alpha3=6,beta3=9), init_index=c(median(x),median(y)), model=c("WGW"), method=c("MLE")) x<- rW(100, 2, 1) y <- rG(100, 2, 2) z <- rW(100, 6, 9) r.tc_graph(x=x,y=y,z=z, init_param=c(alpha1=2,beta1=1,alpha2=2, beta2=2,alpha3=6,beta3=9), empirical=FALSE,model=c("WGW"), method=c("MLE"))