コード例 #1
0
same_subject_snp_plowers = []
same_subject_snp_puppers = []
same_subject_gene_plowers = []
same_subject_gene_puppers = []
for sample_pair_idx in xrange(0, len(same_subject_snp_idxs[0])):

    i = same_subject_snp_idxs[0][sample_pair_idx]
    j = same_subject_snp_idxs[1][sample_pair_idx]

    plower, pupper = stats_utils.calculate_poisson_rate_interval(
        snp_difference_matrix[i, j], snp_opportunity_matrix[i, j], alpha)

    same_subject_snp_plowers.append(plower)
    same_subject_snp_puppers.append(pupper)

    snp_differences = diversity_utils.calculate_snp_differences_between(
        i, j, allele_counts_map, passed_sites_map, min_change=min_change)

    i = same_subject_gene_idxs[0][sample_pair_idx]
    j = same_subject_gene_idxs[1][sample_pair_idx]
    gene_differences = gene_diversity_utils.calculate_gene_differences_between(
        i, j, gene_depth_matrix, marker_coverages, min_log2_fold_change=4)

    plower, pupper = stats_utils.calculate_poisson_rate_interval(
        gene_difference_matrix[i, j], gene_opportunity_matrix[i, j])

    same_subject_gene_plowers.append(plower)
    same_subject_gene_puppers.append(pupper)

    if (len(snp_differences) > 0) or (len(gene_differences) > 0):
        # Print them out!
        print "Changes between pair", sample_pair_idx
コード例 #2
0
                i = same_subject_idxs[0][sample_pair_idx]
                j = same_subject_idxs[1][sample_pair_idx]

                sample_i = snp_samples[i]
                sample_j = snp_samples[j]

                avg_depth_i = sample_coverage_map[sample_i]
                avg_depth_j = sample_coverage_map[sample_j]

                chunk_tracked_private_snps = diversity_utils.calculate_tracked_private_snvs(
                    i, j, allele_counts_map, passed_sites_map, avg_depth_i,
                    avg_depth_j, private_snv_map)

                chunk_snp_changes = diversity_utils.calculate_snp_differences_between(
                    i, j, allele_counts_map, passed_sites_map, avg_depth_i,
                    avg_depth_j)

                sample_pair = (sample_i, sample_j)

                if sample_pair not in snp_changes:
                    snp_changes[sample_pair] = []
                    gene_changes[sample_pair] = []
                    snp_opportunities[sample_pair] = 0
                    gene_opportunities[sample_pair] = 0
                    snp_perrs[sample_pair] = -1
                    gene_perrs[sample_pair] = -1

                    tracked_private_snps[sample_pair] = []
                    tracked_private_snp_opportunities[sample_pair] = 0
                    tracked_private_snp_perrs[sample_pair] = -1
コード例 #3
0
    # Calculate fixation matrix
    sys.stderr.write("Calculating joint freqs...\n")
    for pair_idx in xrange(0,len(desired_sample_pairs)):
        
        initial_sample_idx, final_sample_idx = desired_sample_pair_idxs[pair_idx]
        
        chunk_gene_names, chunk_chromosomes, chunk_positions, chunk_initial_freqs, chunk_final_freqs, chunk_initial_depths, chunk_final_depths = diversity_utils.calculate_temporal_sample_freqs(allele_counts_map, passed_sites_map, initial_sample_idx, final_sample_idx)  # 
    
        joint_passed_sites = (chunk_initial_depths>0)*(chunk_final_depths>0)
    
        gene_names[pair_idx].extend(chunk_gene_names[joint_passed_sites])
        initial_freqs[pair_idx].extend(chunk_initial_freqs[joint_passed_sites])
        initial_depths[pair_idx].extend(chunk_initial_depths[joint_passed_sites])
        final_freqs[pair_idx].extend(chunk_final_freqs[joint_passed_sites])
        
        snp_changes[pair_idx].extend(diversity_utils.calculate_snp_differences_between(initial_sample_idx, final_sample_idx, allele_counts_map, passed_sites_map, lower_threshold=snv_lower_threshold,
                                                                                       upper_threshold=snv_upper_threshold))
         
    sys.stderr.write("Done!\n")
    
for pair_idx in xrange(0,len(desired_sample_pairs)):
    gene_names[pair_idx] = numpy.array(gene_names[pair_idx])
    initial_freqs[pair_idx] = numpy.array(initial_freqs[pair_idx])
    final_freqs[pair_idx] = numpy.array(final_freqs[pair_idx])
    
    
sys.stderr.write("Done!\n")   

highlighted_gene_colors = {}
highlighted_gene_depths = {}

# Plot joint SFS!