示例#1
0
#frequency of aminoacids and neighbor numbers
#statistics_collector_from_archive.restype_av_scores['GLU'].plot_relative_frequencies_of_numbers_of_neighbors()
#statistics_collector_from_archive.restype_av_scores['GLU'].get_relative_frequency_for_nn(10)
#for aminoacid in aminoacids:
#    statistics_collector_from_archive.restype_av_scores[aminoacid].plot_relative_frequencies_of_numbers_of_neighbors()


if histogram_location != '' and interesting_score_terms != '':
    for aminoacid in aminoacids:
        if aminoacid in outside_aa:
            main_neighbor_situations = main_neighbor_situations_outside
        elif aminoacid in inside_aa:
            main_neighbor_situations = main_neighbor_situations_inside
        for score_term in interesting_score_terms:
            for neighbor_situation in main_neighbor_situations:
                mean = statistics_collector_from_archive.calculate_averages_and_stddevs_from_subset(aminoacid, score_term, neighbor_situation)[0]
                stddev = statistics_collector_from_archive.calculate_averages_and_stddevs_from_subset(aminoacid, score_term, neighbor_situation)[1]
                number_of_residues = len(statistics_collector_from_archive.restype_av_scores[aminoacid].get_merged_list_for_ncounts(score_term, neighbor_situation))
                statistics_collector_from_archive.restype_av_scores[aminoacid].make_histogram_for_scoreterm_for_ncounts(score_term, neighbor_situation, number_of_residues, histogram_location, mean, stddev)

if not (pdb_file == '' and pdb_file_2 == ''):
    for score_term_z in interesting_score_terms:
        print '\n---------Calculation of z scores for %s-------------------------' % score_term_z
        if '+' in score_term_z or '-' in score_term_z:
            statistics_collector_from_archive.calculate_combined_score_terms(score_term_z)
        if pdb_file != '' and pdb_file_2 == '':
            print 'z-scores:'
            reference_z_scores = ZScoreCalculator(pdb_file, statistics_collector_from_archive)
            zscores = reference_z_scores.calculate_z_scores(score_term_z)
            for i in reference_z_scores.z_sorted:
                print i
filename1 = '10gs_nohet_1_relax.pdb'
filename2 = 'serin-only-test-pdb.txt'

statistics_collector_from_pdb1 = ResTypesStatisticsCollector()
statistics_collector_from_pdb2 = ResTypesStatisticsCollector()


pe_instance1 = PoseEnergies()
pe_instance1.loadFile(filename1)
statistics_collector_from_pdb1.add_pose_energies(pe_instance1)

pe_instance2 = PoseEnergies()
pe_instance2.loadFile(filename2)
statistics_collector_from_pdb2.add_pose_energies(pe_instance2)

mean1 = statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10,21))[0]
stddev1 = statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10,21))[1]
mean2 = statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')[0]
stddev2 = statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')[1]



#print statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10, 21))
#print statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')

if not (round(mean1, 6) == round(mean2, 6) and round(stddev1, 6) == round(stddev2, 6)):
	print 'ERROR: calculating stddev and mean from a subset (depending on amount of neighbors) does not work correctly!'
else:
	print 'No errror seen in calculating stddev and mean from a subset (depending on amount of neighbors)'

#print statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10, 21)), statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')