statalign.postprocess.plugins.benchmarks
Class Benchmarks

java.lang.Object
  extended by statalign.postprocess.plugins.benchmarks.Benchmarks

public class Benchmarks
extends java.lang.Object


Constructor Summary
Benchmarks()
           
 
Method Summary
static void automatedTest()
           
static void automatedTest2()
           
static void automatedTests()
           
static double calculateFScore(int[] realPairedSites, int[] predictedPairedSites)
          Given an array of paired sites corresponding to the real structure and an array corresponding to the predicted structure returns the F-score.
static double calculatePPV(int[] realPairedSites, int[] predictedPairedSites)
          Given an array of paired sites corresponding to the real structure and an array corresponding to the predicted structure returns the PPV.
static double calculateSensitivity(int[] realPairedSites, int[] predictedPairedSites)
          Given an array of paired sites corresponding to the real structure and an array corrsponding to the predicted structure returns the sensitivity.
static double getAverageLength(java.util.ArrayList<java.lang.String> sequences)
           
static double getDouble(double val)
           
static double getMedian(java.util.ArrayList<java.lang.Double> values)
          Returns the median from a list of values
static int[] getPairedSites(char[] structure)
           
static double getValue(java.util.ArrayList<java.lang.Double> values, double percentile)
          Returns a value at a given percentile.
static double[] getValues(int[] realPairedSites, int[] predictedPairedSites)
           
static double IQR(java.util.ArrayList<java.lang.Double> values)
          Calculates the Interquartile Range from a given list of values.
static ExperimentalData loadExperimentalStructure(java.io.File realStructureFile)
          Loads the experimentally-derived secondary structures and alignments.
static StatAlignResult loadStatAlignResultFile(java.io.File resultFile)
           
static void main(java.lang.String[] args)
           
static double mean(java.util.ArrayList<java.lang.Double> values)
          Calculates the mean from a list values
static double percentGreaterOrEqualTo(double x, java.util.ArrayList<java.lang.Double> values)
           
static double percentile(java.util.ArrayList<java.lang.Double> values, double x)
          Returns the percentile of the specified value in the specified list of values.
 void performDistanceBenchmarks()
           
static void performDistanceBenchmarks(Dataset dataset)
           
 void performEntropy()
           
static void printPairs(int[] pairedSites)
           
static void printValues(int[] realPairedSites, int[] predictedPairedSites)
           
static int[] projectPairedSites(java.lang.String alignedSequence, int[] pairedSites)
          Takes an integer array of paired sites and deletes nucleotide positions corresponding to gaps in the aligned sequence.
static void saveAsFasta(java.util.ArrayList<java.lang.String> sequences, java.util.ArrayList<java.lang.String> sequenceNames, java.io.File outFile)
          Save a list of sequences and sequence names as a FASTA file.
static void saveAsFasta(ExperimentalData expData, java.io.File outFile)
           
static double score(double x, java.util.ArrayList<java.lang.Double> values)
           
static double stdev(java.util.ArrayList<java.lang.Double> values)
          Calculates the standard deviation of a list of values.
static void testData()
           
static void testVariation()
           
static void testVariation2()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Benchmarks

public Benchmarks()
Method Detail

main

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

testData

public static void testData()

automatedTest

public static void automatedTest()

automatedTest2

public static void automatedTest2()

performDistanceBenchmarks

public static void performDistanceBenchmarks(Dataset dataset)

getDouble

public static double getDouble(double val)

getPairedSites

public static int[] getPairedSites(char[] structure)

automatedTests

public static void automatedTests()

getAverageLength

public static double getAverageLength(java.util.ArrayList<java.lang.String> sequences)

testVariation2

public static void testVariation2()

testVariation

public static void testVariation()

performDistanceBenchmarks

public void performDistanceBenchmarks()

performEntropy

public void performEntropy()

percentGreaterOrEqualTo

public static double percentGreaterOrEqualTo(double x,
                                             java.util.ArrayList<java.lang.Double> values)

score

public static double score(double x,
                           java.util.ArrayList<java.lang.Double> values)

mean

public static double mean(java.util.ArrayList<java.lang.Double> values)
Calculates the mean from a list values

Parameters:
values -
Returns:

stdev

public static double stdev(java.util.ArrayList<java.lang.Double> values)
Calculates the standard deviation of a list of values.

Parameters:
values -
Returns:

printPairs

public static void printPairs(int[] pairedSites)

projectPairedSites

public static int[] projectPairedSites(java.lang.String alignedSequence,
                                       int[] pairedSites)
Takes an integer array of paired sites and deletes nucleotide positions corresponding to gaps in the aligned sequence. A site whose base-pairing partner is deleted becomes single-stranded, unless it was deleted as well.

Parameters:
alignedSequence -
pairedSites -
Returns:

saveAsFasta

public static void saveAsFasta(ExperimentalData expData,
                               java.io.File outFile)

saveAsFasta

public static void saveAsFasta(java.util.ArrayList<java.lang.String> sequences,
                               java.util.ArrayList<java.lang.String> sequenceNames,
                               java.io.File outFile)
Save a list of sequences and sequence names as a FASTA file.

Parameters:
sequences -
sequenceNames -
outFile -

loadExperimentalStructure

public static ExperimentalData loadExperimentalStructure(java.io.File realStructureFile)
Loads the experimentally-derived secondary structures and alignments.

Parameters:
realStructureFile - the name of the file to load.
Returns:
an ExperimentalData object representing the experimental structure and alignment.

calculateSensitivity

public static double calculateSensitivity(int[] realPairedSites,
                                          int[] predictedPairedSites)
Given an array of paired sites corresponding to the real structure and an array corrsponding to the predicted structure returns the sensitivity.

Parameters:
realPairedSites -
predictedPairedSites -
Returns:

calculatePPV

public static double calculatePPV(int[] realPairedSites,
                                  int[] predictedPairedSites)
Given an array of paired sites corresponding to the real structure and an array corresponding to the predicted structure returns the PPV.

Parameters:
realPairedSites -
predictedPairedSites -
Returns:

calculateFScore

public static double calculateFScore(int[] realPairedSites,
                                     int[] predictedPairedSites)
Given an array of paired sites corresponding to the real structure and an array corresponding to the predicted structure returns the F-score.

Parameters:
realPairedSites -
predictedPairedSites -
Returns:

getValues

public static double[] getValues(int[] realPairedSites,
                                 int[] predictedPairedSites)

printValues

public static void printValues(int[] realPairedSites,
                               int[] predictedPairedSites)

loadStatAlignResultFile

public static StatAlignResult loadStatAlignResultFile(java.io.File resultFile)

IQR

public static double IQR(java.util.ArrayList<java.lang.Double> values)
Calculates the Interquartile Range from a given list of values.

Parameters:
values -
Returns:

getMedian

public static double getMedian(java.util.ArrayList<java.lang.Double> values)
Returns the median from a list of values

Parameters:
values -
Returns:

getValue

public static double getValue(java.util.ArrayList<java.lang.Double> values,
                              double percentile)
Returns a value at a given percentile.

Parameters:
values -
percentile -
Returns:

percentile

public static double percentile(java.util.ArrayList<java.lang.Double> values,
                                double x)
Returns the percentile of the specified value in the specified list of values.

Parameters:
values -
x -
Returns: