package com.compomics.util.math.statistics; import org.apache.commons.math.MathException; /** * This class can be used to draw ROC curves. * * @author Marc Vaudel */ public 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. * * @param specificity the specificity (0.1 is 10%) * * @return the sensitivity at the given specificity (0.1 is 10%) * * @throws org.apache.commons.math.MathException if a MathException occurs */ public double getValueAt(double specificity) throws MathException; /** * Returns the 1-specificity at a given sensitivity. * * @param sensitivity the sensitivity (0.1 is 10%) * * @return the corresponding 1-specificity (0.1 is 10%) * * @throws MathException if a MathException occurs */ public double getSpecificityAt(double sensitivity) throws MathException; /** * Returns xy values to draw the curve. * * @return xy values to draw the curve * * @throws MathException if a MathException occurs */ public double[][] getxYValues() throws MathException; /** * Returns an estimation of the area under the curve. * * @return an estimation of the area under the curve * * @throws MathException if a MathException occurs */ public double getAuc() throws MathException; }