de.uni_leipzig.bf.eval
Class DataReader

java.lang.Object
  extended by de.uni_leipzig.bf.eval.DataReader

public class DataReader
extends java.lang.Object

Author:
an
 

Field Summary
(package private)  java.util.HashMap<java.lang.Integer,java.util.TreeSet<java.lang.String>> cluster2protMap
           
(package private)  java.util.HashMap<java.lang.Integer,java.util.TreeSet<java.lang.String>> complex2protMap
           
(package private)  java.util.HashMap<java.lang.String,java.lang.Integer> complexIds
           
(package private)  java.util.TreeSet<java.lang.String> complexList
           
(package private)  double[][] contingencyMatrix
           
(package private)  double[][] separationMatrix
           
 
Constructor Summary
DataReader(double[][] _contingencyMatrix, java.util.HashMap<java.lang.String,java.lang.Integer> _complexIds)
          Creates a new instance of DataReader
DataReader(java.lang.String complexes, java.lang.String clusters)
           
 
Method Summary
 void buildContingencyTable(java.lang.String complexes, java.lang.String clusters)
          public double computeComplexwiseSeparation() { } /** Compute contingency table from cluster2protMap and complex2protMap
static void cleanGraph(java.lang.String input, java.lang.String complexes, java.lang.String output)
          Cleans graph from unclassified proteins
static double complexWiseSensitivity(java.util.HashMap<java.lang.String,java.util.TreeSet<java.lang.String>> complexes, java.util.ArrayList<java.util.TreeSet<java.lang.String>> clusters)
          Computes complex-wise sensitivity of a clustering
 double computeAccuracy()
          Accuracy is the geometric mean of PPV and sensitivity
 double computeComplexwiseSperation()
           
 double computePPV()
          Compute PPV of a clustering
 double computePPVDebug()
          Compute PPV (and print debug informations) of a clustering
 double computeSensitivity()
          Compute sensitivity of a clustering
 double computeSensitivityDebug()
          Compute sensitivity (and print debug informations) of a clustering
 void computeSeparationByColumn()
          Computes separation by column
 void computeSeparationMatrix()
          Computes separation by row
 double[] computeSeparations()
           
 void initClusterIds(java.lang.String file)
          Read results of BorderFlow and write them in cluster2protMap
 void initComplexIds(java.lang.String file)
           
static int intersection(java.util.TreeSet<java.lang.String> a, java.util.TreeSet<java.lang.String> b)
          Computes the intersection of two TreeSet
static void main(java.lang.String[] args)
           
static java.util.HashMap<java.lang.String,java.util.TreeSet<java.lang.String>> readComplexes(java.lang.String file)
           
static void runtest()
           
 java.util.TreeSet<java.lang.String> string2treeSet(java.lang.String s)
          Transforms strings of the form [X(, Y)*] to TreeSet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cluster2protMap

java.util.HashMap<java.lang.Integer,java.util.TreeSet<java.lang.String>> cluster2protMap

complex2protMap

java.util.HashMap<java.lang.Integer,java.util.TreeSet<java.lang.String>> complex2protMap

complexIds

java.util.HashMap<java.lang.String,java.lang.Integer> complexIds

complexList

java.util.TreeSet<java.lang.String> complexList

contingencyMatrix

double[][] contingencyMatrix

separationMatrix

double[][] separationMatrix
Constructor Detail

DataReader

public DataReader(double[][] _contingencyMatrix,
                  java.util.HashMap<java.lang.String,java.lang.Integer> _complexIds)
Creates a new instance of DataReader


DataReader

public DataReader(java.lang.String complexes,
                  java.lang.String clusters)
Method Detail

buildContingencyTable

public void buildContingencyTable(java.lang.String complexes,
                                  java.lang.String clusters)
public double computeComplexwiseSeparation() { } /** Compute contingency table from cluster2protMap and complex2protMap


cleanGraph

public static void cleanGraph(java.lang.String input,
                              java.lang.String complexes,
                              java.lang.String output)
Cleans graph from unclassified proteins


complexWiseSensitivity

public static double complexWiseSensitivity(java.util.HashMap<java.lang.String,java.util.TreeSet<java.lang.String>> complexes,
                                            java.util.ArrayList<java.util.TreeSet<java.lang.String>> clusters)
Computes complex-wise sensitivity of a clustering


computeAccuracy

public double computeAccuracy()
Accuracy is the geometric mean of PPV and sensitivity


computeComplexwiseSperation

public double computeComplexwiseSperation()

computePPV

public double computePPV()
Compute PPV of a clustering


computePPVDebug

public double computePPVDebug()
Compute PPV (and print debug informations) of a clustering


computeSensitivity

public double computeSensitivity()
Compute sensitivity of a clustering


computeSensitivityDebug

public double computeSensitivityDebug()
Compute sensitivity (and print debug informations) of a clustering


computeSeparationByColumn

public void computeSeparationByColumn()
Computes separation by column


computeSeparationMatrix

public void computeSeparationMatrix()
Computes separation by row


computeSeparations

public double[] computeSeparations()

initClusterIds

public void initClusterIds(java.lang.String file)
Read results of BorderFlow and write them in cluster2protMap


initComplexIds

public void initComplexIds(java.lang.String file)

intersection

public static int intersection(java.util.TreeSet<java.lang.String> a,
                               java.util.TreeSet<java.lang.String> b)
Computes the intersection of two TreeSet


main

public static void main(java.lang.String[] args)

readComplexes

public static java.util.HashMap<java.lang.String,java.util.TreeSet<java.lang.String>> readComplexes(java.lang.String file)

runtest

public static void runtest()

string2treeSet

public java.util.TreeSet<java.lang.String> string2treeSet(java.lang.String s)
Transforms strings of the form [X(, Y)*] to TreeSet