X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=forester%2Fjava%2Fsrc%2Forg%2Fforester%2Fmsa_compactor%2FMsaProperties.java;h=1abc6385586a03192d69de9a3eef50e9707de876;hb=c73326f29a91a733a71bfe36192dbd30e4f49af8;hp=deccb7903b85c2ea141441106938044ab26ace83;hpb=806774f7ed8880f0555b9433b5cd1799513993c9;p=jalview.git diff --git a/forester/java/src/org/forester/msa_compactor/MsaProperties.java b/forester/java/src/org/forester/msa_compactor/MsaProperties.java index deccb79..1abc638 100644 --- a/forester/java/src/org/forester/msa_compactor/MsaProperties.java +++ b/forester/java/src/org/forester/msa_compactor/MsaProperties.java @@ -29,41 +29,62 @@ import org.forester.msa.MsaMethods; public final class MsaProperties { - final private double _average_identity_ratio; + final private double _entropy21; + final private double _entropy7; final private double _gap_ratio; final private int _length; final private int _number_of_sequences; + final private double _avg_number_of_gaps; + final private String _removed_seq; public MsaProperties( final int number_of_sequences, final int length, final double gap_ratio, - final double average_identity_ratio ) { + final double entropy7, + final double entropy21, + final double avg_number_of_gaps, + final String removed_seq ) { _number_of_sequences = number_of_sequences; _length = length; _gap_ratio = gap_ratio; - _average_identity_ratio = average_identity_ratio; + _entropy7 = entropy7; + _entropy21 = entropy21; + _avg_number_of_gaps = avg_number_of_gaps; + _removed_seq = removed_seq; } - public MsaProperties( final Msa msa, final boolean calculate_aln_mean_identity ) { + public MsaProperties( final Msa msa, final String removed_seq, final boolean calculate_normalized_shannon_entropy ) { _number_of_sequences = msa.getNumberOfSequences(); _length = msa.getLength(); _gap_ratio = MsaMethods.calcGapRatio( msa ); - if ( calculate_aln_mean_identity ) { - _average_identity_ratio = MsaMethods.calculateIdentityRatio( 0, msa.getLength() - 1, msa ).arithmeticMean(); + _removed_seq = removed_seq; + _avg_number_of_gaps = MsaMethods.calcNumberOfGapsStats( msa ).arithmeticMean(); + if ( calculate_normalized_shannon_entropy ) { + _entropy7 = MsaMethods.calcNormalizedShannonsEntropy( 7, msa ); + _entropy21 = MsaMethods.calcNormalizedShannonsEntropy( 21, msa ); } else { - _average_identity_ratio = -1; + _entropy7 = -1; + _entropy21 = -1; } } - public final double getAverageIdentityRatio() { - return _average_identity_ratio; + public final double getEntropy21() { + return _entropy21; + } + + public final double getEntropy7() { + return _entropy7; } public final double getGapRatio() { return _gap_ratio; } + public final double getAvgNumberOfGaps() { + return _avg_number_of_gaps; + } + public final int getLength() { return _length; } @@ -71,4 +92,8 @@ public final class MsaProperties { public final int getNumberOfSequences() { return _number_of_sequences; } + + public final String getRemovedSeq() { + return _removed_seq; + } }