Changeset 4272
- Timestamp:
- Jan 2, 2012, 6:29:50 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/plugin/src/org/proteios/plugins/CombinedHitsReport.java
r4271 r4272 400 400 // Restrict so that the score type starts with: 401 401 hitQuery.setParameter("scoretype", score_types[i] + "%", null); 402 if (progress != null) 403 { 404 progress.display((50 * i / score_types.length), 405 "Query " + (i + 1) + " of " + score_types.length); 406 } 402 407 Iterator<Hit> hitIt = hitQuery.iterate(dc); 403 408 List<Hit> hitlist = new ArrayList<Hit>(); … … 422 427 423 428 Iterator<Hit> hitit = hitlist.iterator(); 424 if (progress != null)425 {426 progress.display((50 * i / score_types.length),427 "Query " + (i + 1) + " of " + score_types.length);428 }429 429 boolean first = true; 430 430 int last_index = 0, last_rev_index = 0, forwardSize = combinedHits … … 799 799 int combinedHitsSize = combinedHits.size(); 800 800 int revCombinedHitsSize = revCombinedHits.size(); 801 int forward_idx=0; 802 int reverse_idx=0; 801 803 for (int i = 0; i < combinedHitsSize; i++) 802 804 { 803 int forwardCount = 0;805 //int forwardCount = 0; 804 806 int count = combinedHits.get(i).count; 805 for (int j = 0; j < combinedHitsSize; j++)807 for (int j = forward_idx; j < combinedHitsSize; j++) 806 808 { 807 809 if (count >= combinedHits.get(j).count) 808 810 { 809 forward Count++;811 forward_idx=j; 810 812 } 811 813 else 812 814 break; 813 815 } 814 int reverseCount = 0;815 for (int j = 0; j < revCombinedHitsSize; j++)816 //int reverseCount = 0; 817 for (int j = reverse_idx; j < revCombinedHitsSize; j++) 816 818 { 817 819 if (count >= revCombinedHits.get(j).count) 818 820 { 819 reverse Count++;821 reverse_idx=j++; 820 822 } 821 823 else 822 824 break; 823 825 } 824 double combinedFDR = ((double) reverse Count / (decoySize * (double) forwardCount));826 double combinedFDR = ((double) reverse_idx / (decoySize * (double) forward_idx)); 825 827 // Conservative estimate 826 828 if (combinedFDR == 0) … … 840 842 if (keepDecoys) 841 843 { 844 forward_idx=0; 845 reverse_idx=0; 842 846 for (int i = 0; i < revCombinedHitsSize; i++) 843 847 { 844 double forwardCount = 0d; 845 double count = revCombinedHits.get(i).count; 846 for (int j = 0; j < combinedHitsSize; j++) 848 int count = revCombinedHits.get(i).count; 849 for (int j = forward_idx; j < combinedHitsSize; j++) 847 850 { 848 851 if (count >= combinedHits.get(j).count) 849 852 { 850 forward Count++;853 forward_idx=j; 851 854 } 852 855 else 853 856 break; 854 857 } 855 double reverseCount = 0d; 856 for (int j = 0; j < revCombinedHitsSize; j++) 858 for (int j = reverse_idx; j < revCombinedHitsSize; j++) 857 859 { 858 860 if (count >= revCombinedHits.get(j).count) 859 861 { 860 reverse Count++;862 reverse_idx=j; 861 863 } 862 864 else 863 865 break; 864 866 } 865 double combinedFDR = ( reverseCount / (decoySize * forwardCount));867 double combinedFDR = ((double) reverse_idx / (decoySize * (double) forward_idx)); 866 868 revCombinedHits.get(i).fdr = combinedFDR; 867 869 // Now set the fdr value in the hit
Note: See TracChangeset
for help on using the changeset viewer.