methods.scores.bootstrap
Class Bootstrap

java.lang.Object
  extended by methods.scores.bootstrap.Bootstrap

public class Bootstrap
extends Object

Contains methods for the calculation of protein interaction scores using the Bootstrap approach according to

Caroline C. Friedel, Jan Krumsiek, Ralf Zimmer
Bootstrapping the Interactome: Unsupervised Identification of Protein Complexes in Yeast.
RECOMB 2008, LNBI 4955, pp. 3-16.

This class is not instantiatable.


Method Summary
static ComplexSet calculateOptimalSharedProteinsSet(ComplexSet complexes, ProteinNetwork scores, float lambda)
          Calculates the complex set with added shared proteins using a given scores network.
static BootstrapMCLClusterings clusterForSample(ProteinNetwork scores, ArrayList<Float> inflationCoefficients)
          Performs MCL clustering of a given scores network with a set of inflation coefficient.
static BootstrapMCLClusterings clusterForSample(ProteinNetwork scores, Float... inflationCoefficients)
          Performs MCL clustering of a given scores network with a set of inflation coefficient.
static ProteinNetwork createBootstrapNetwork(Collection<ComplexSet> clusterings)
          Creates the bootstrap network for a given set of clusterings.
static ArrayList<ComplexSet> extractClusteringsWithOptimalInflation(ArrayList<BootstrapMCLClusterings> clusteringLists, float optimalInflation)
          Extracts clusterings created with a given inflation coefficient (should be the optimal one) from a set of clusterings.
static float findBestInflation(ArrayList<BootstrapMCLClusterings> clusteringsOnlyEff)
          Finds the best inflation coefficient from a given set of clusterings.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

extractClusteringsWithOptimalInflation

public static ArrayList<ComplexSet> extractClusteringsWithOptimalInflation(ArrayList<BootstrapMCLClusterings> clusteringLists,
                                                                           float optimalInflation)
Extracts clusterings created with a given inflation coefficient (should be the optimal one) from a set of clusterings.

Parameters:
set - of clusterings
optimalInflation - inflation coefficient for which the clusterings will be extracted
Returns:
set of clusterings with the given inflation coefficient

createBootstrapNetwork

public static ProteinNetwork createBootstrapNetwork(Collection<ComplexSet> clusterings)
Creates the bootstrap network for a given set of clusterings. The weights of the edges in this network represent the frequency of cooccurence of two proteins in the given set of clusterings. For instance, if two proteins appear in the same complex in 60% of the clusterings, their edge gets a weight of 0.6

Parameters:
clusterings - set of clusterings for which the boostrap network is calculated
Returns:
bootstrap network for the given clusterings

clusterForSample

public static BootstrapMCLClusterings clusterForSample(ProteinNetwork scores,
                                                       Float... inflationCoefficients)
Performs MCL clustering of a given scores network with a set of inflation coefficient.

Parameters:
scores - scores network to be clustered
inflationCoefficients - inflation coefficients to be used
Returns:
clusterings, one for each inflation coefficient

clusterForSample

public static BootstrapMCLClusterings clusterForSample(ProteinNetwork scores,
                                                       ArrayList<Float> inflationCoefficients)
Performs MCL clustering of a given scores network with a set of inflation coefficient.

Parameters:
scores - scores network to be clustered
inflationCoefficients - inflation coefficients to be used
Returns:
clusterings, one for each inflation coefficient

calculateOptimalSharedProteinsSet

public static ComplexSet calculateOptimalSharedProteinsSet(ComplexSet complexes,
                                                           ProteinNetwork scores,
                                                           float lambda)
Calculates the complex set with added shared proteins using a given scores network. The lambda parameter describes the scores theshold for the newly created complex. For example, if lambda = 0.95 (the recommended value) the complex set with shared proteins is calculated whose average complex score is about 95% of the original complex set.

Parameters:
complexes - complex set for which shared proteins are calculated
scores - scores network to be used for evaluation
lambda - lambda parameter (see description of this method)
Returns:
the complex set containing added shared proteins

findBestInflation

public static float findBestInflation(ArrayList<BootstrapMCLClusterings> clusteringsOnlyEff)
Finds the best inflation coefficient from a given set of clusterings. The best inflation coefficient has to best average efficiency over all clusterings.

Note: The clustering objects do not have to contain actual clusterings, inflation coefficient and efficiency are enough. See also: BootstrapMCLClusterings.BootstrapMCLClusterings(String, boolean)

Parameters:
clusteringsOnlyEff - clusterings list from which the best inflation coeffient is determined
Returns:
best inflation coefficient for the given clusterings list