Package com.compomics.util.math.roc
Class DistributionRoc
java.lang.Object
com.compomics.util.math.roc.DistributionRoc
- All Implemented Interfaces:
ROC
public class DistributionRoc extends Object implements ROC
This class can be used to draw roc curves from experimental data.
- Author:
- Marc Vaudel
-
Constructor Summary
Constructors Constructor Description DistributionRoc()
Empty default constructorDistributionRoc(Distribution distributionControl, Distribution distributionPatient)
Constructor. -
Method Summary
Modifier and Type Method Description double
getAuc()
Returns an estimation of the area under the curve.double
getSpecificityAt(double sensitivity)
Returns the 1-specificity at a given sensitivity.double
getValueAt(double specificity)
Returns the sensitivity at a given 1-specificity, i.e., 1-type 2 error, the number of true healthy for a given type 1 error, the number of false healthy.double[][]
getxYValues()
Returns xy values to draw the curve.
-
Constructor Details
-
DistributionRoc
public DistributionRoc()Empty default constructor -
DistributionRoc
Constructor. The patient distribution should be higher (to the right) than the control distribution.- Parameters:
distributionControl
- the control distributiondistributionPatient
- the patient distribution
-
-
Method Details
-
getValueAt
public double getValueAt(double specificity) throws org.apache.commons.math.MathExceptionDescription copied from interface:ROC
Returns the sensitivity at a given 1-specificity, i.e., 1-type 2 error, the number of true healthy for a given type 1 error, the number of false healthy.- Specified by:
getValueAt
in interfaceROC
- Parameters:
specificity
- the specificity (0.1 is 10%)- Returns:
- the sensitivity at the given specificity (0.1 is 10%)
- Throws:
org.apache.commons.math.MathException
- if a MathException occurs
-
getSpecificityAt
public double getSpecificityAt(double sensitivity) throws org.apache.commons.math.MathExceptionDescription copied from interface:ROC
Returns the 1-specificity at a given sensitivity.- Specified by:
getSpecificityAt
in interfaceROC
- Parameters:
sensitivity
- the sensitivity (0.1 is 10%)- Returns:
- the corresponding 1-specificity (0.1 is 10%)
- Throws:
org.apache.commons.math.MathException
- if a MathException occurs
-
getxYValues
public double[][] getxYValues() throws org.apache.commons.math.MathExceptionDescription copied from interface:ROC
Returns xy values to draw the curve.- Specified by:
getxYValues
in interfaceROC
- Returns:
- xy values to draw the curve
- Throws:
org.apache.commons.math.MathException
- if a MathException occurs
-
getAuc
public double getAuc() throws org.apache.commons.math.MathExceptionDescription copied from interface:ROC
Returns an estimation of the area under the curve.
-