Пример #1
0
'''
Created on Jun 27, 2014

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/AND_TCR/Analysis/Chips1_2_3/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        datasets = []
        for peptide in ('K99A', 'NoPep', 'PCC'):
            pep_dirpath = yzer.get_filename(dirpath,
                                            '{}_{}'.format(peptide, ab))

            filename = yzer.get_filename(
                pep_dirpath, '{}_{}_enhancers.txt'.format(peptide, ab))

            data = yzer.import_file(filename)
            data = data.fillna(0)

            # Only in all three reps
            #data = data[(data['p1_id'] > 0) & (data['p2_id'] > 0) & (data['p3_id'] > 0)]

            datasets.append(data)
            # ONLY this pep:
            only = sum((data['id(2)'] == 0) & (data['id(3)'] == 0))
Пример #2
0
'''
Created on Mar 28, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/TReg_enhancers/2013_03_19'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs')

    for antibody in ('me2', 'ac'):
        treg = yzer.import_file(
            yzer.get_filename(
                dirpath, 'treg_with_naive_{0}.txt'.format(antibody))).fillna(0)
        naive = yzer.import_file(
            yzer.get_filename(
                dirpath, 'naive_with_treg_{0}.txt'.format(antibody))).fillna(0)

        # Filter out promoters
        treg = treg[treg['tss_id'] == 0]
        naive = naive[naive['tss_id'] == 0]

        # Get venn-diagram sets for foxp3/me2
        only_treg = treg[treg['naive_id'] == 0]
        only_naive = naive[naive['treg_id'] == 0]
        shared = treg[treg['naive_id'] > 0]
        print len(only_treg), len(only_naive), len(shared)
Пример #3
0
'''
Created on Sep 7, 2012

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland_2012/GR_Project/'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs', 'from_peaks')

    all_data = yzer.import_file(
        yzer.get_filename(motif_dirpath, 'p65_kla_vectors.txt'))
    size = 100
    if True:
        for ratio in (3, 2, 1.5):
            enhancers = yzer.import_file(
                yzer.get_filename(
                    dirpath, 'boxplots_non_refseq_by_p65',
                    'enhancer_like_lose_p65_{0}x_change_dsg_only.txt'.format(
                        ratio)))
            enhancers['glass_transcript_id'] = enhancers['id']

            # Limit to peaks and touching transcripts, then pull out peaks that intersect our enhancer set
            data = all_data[all_data['touches'] == 't']
            data = data.merge(enhancers,
                              how='right',
                              on='glass_transcript_id',
Пример #4
0
                    grapher.get_filename(
                        scatter_dirpath,
                        'two_color_kla_vs_kla_dex_group_{0}_runs_{1}.png'.
                        format(x, slug_label)))
                grapher.show_plot()

    if False:
        # Gene names
        print grapher.get_gene_names(refseq[(refseq['kla_1_lfc'] >= 1)],
                                     add_quotes=True)
        print grapher.get_gene_names(
            refseq[(refseq['kla_1_lfc'] >= 1)
                   & (refseq['dex_over_kla_1_lfc'] < -.58)])

    if False:
        yzer = MotifAnalyzer()
        motif_dirpath = yzer.get_filename(dirpath, 'motifs/size_200')
        distal = data[data['distal'] == 't']

        dataset = distal[(distal['kla_lfc'] >= 1)]
        yzer.prep_files_for_homer(dataset,
                                  'distal_up_in_kla_all',
                                  motif_dirpath,
                                  center=False,
                                  reverse=False,
                                  preceding=True,
                                  size=200)

        dataset = distal[(distal['kla_1_lfc'] >= 1)]
        yzer.prep_files_for_homer(dataset,
                                  'distal_up_in_kla_1',
Пример #5
0
'''
Created on Nov 7, 2012

@author: karmel
'''
from __future__ import division
from glasslab.dataanalysis.misc.cd4tcell_finland_2012.resources import replicate_sets
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells_Finland_2012/Analysis_2013_02'
    dirpath = yzer.get_path(dirpath)
    go_path = yzer.get_and_create_path(dirpath, 'with_me3', 'go_analysis',
                                       '0_8_min_lfc')

    data = yzer.import_file(
        yzer.get_filename(dirpath, 'transcript_vectors.txt'))
    data = data.fillna(0)
    data = data[data['naive_me3_tag_count'] + data['act_me3_tag_count'] > 0]

    if False:
        curr_path = yzer.get_and_create_path(dirpath, 'with_me3',
                                             'motif_analysis')

        yzer.run_homer(data,
                       'all_refseq_preceding',
                       curr_path,
                       center=False,
                       reverse=False,
                       preceding=True,
'''
Created on Oct 5, 2014

@author: karmel
'''
from glasslab.dataanalysis.misc.rodrigo.samples import get_threshold,\
    get_breed_sets
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Enhancers_set2'
    dirpath = yzer.get_path(dirpath)

    datasets = {}
    breed_sets = get_breed_sets()

    # Working with only WT for now
    sample_names, short_names = breed_sets[0]

    # Set up our samples
    datasets = {}
    for sample_prefix in short_names:
        sample_dirpath = yzer.get_filename(dirpath, sample_prefix)
        filename = yzer.get_filename(sample_dirpath,
                                     sample_prefix + '_enhancers.txt')

        data = yzer.import_file(filename)
        data = data.fillna(0)
Пример #7
0
'''
Created on Sep 27, 2014

@author: karmel
'''
from glasslab.dataanalysis.misc.rodrigo.samples import SAMPLES, sample_name,\
    get_threshold
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Enhancers'
    dirpath = yzer.get_path(dirpath)

    for cond, seq, breed in SAMPLES:
        sample_prefix = sample_name(cond, seq, breed)
        sample_dirpath = yzer.get_filename(dirpath, sample_prefix)
        filename = yzer.get_filename(sample_dirpath,
                                     sample_prefix + '_enhancers.txt')

        data = yzer.import_file(filename)
        data = data.fillna(0)

        if True:

            min_thresh = get_threshold(seq)

            subdata = data[data['tag_count'] >= min_thresh]
            yzer.run_homer(subdata,
                           'all',
Пример #8
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/AND_TCR/Analysis/IDR/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', ):  #'ac'):
        for peptide in ('K99A', 'NoPep', 'PCC'):
            pep_dirpath = yzer.get_filename(dirpath,
                                            '{}_{}'.format(peptide, ab))

            if True:
                filename = yzer.get_filename(
                    pep_dirpath, '{}_{}_enhancers.txt'.format(peptide, ab))

                data = yzer.import_file(filename)
                data = data.fillna(0)

                if True:
                    yzer.run_homer(data,
                                   'all',
                                   pep_dirpath,
                                   cpus=8,
                                   center=True,
Пример #9
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/H3K4me2/Analysis'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs')
    filename = yzer.get_filename(dirpath, 'thio_peak_vectors.txt')
    data = yzer.import_file(filename)
    data = data.fillna(0)

    # me2
    if True:
        if False:
            yzer.run_homer(data,
                           'thio_all',
                           motif_dirpath,
                           cpus=6,
                           center=True,
                           reverse=False,
                           preceding=False,
                           size=200,
                           length=[8, 10, 12, 15])

        data = data[data['tss_id'] == 0]
Пример #10
0
'''
Created on Feb 12, 2013

@author: karmel

Note that set 1 of Rudensky's Foxp3 chip has 2x as many peaks,
but he seems to use set 2 in the paper (?). Here we use
summed tags and peaks found in that.
'''
from __future__ import division
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.dataanalysis.graphing.seq_grapher import SeqGrapher

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    grapher = SeqGrapher()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/TReg_enhancers/2013_04_01'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs')
    graph_dirpath = yzer.get_filename(dirpath, 'piecharts')

    min_score = 10
    for antibody in ('me2', ):
        data = {}
        celltypes = ['treg', 'naive', 'th1', 'th2']
        for celltype in ('treg', 'th1'):
            data[celltype] = yzer.import_file(
                yzer.get_filename(
                    dirpath, '{0}_{1}_versus_others_with_foxp3.txt'.format(
                        celltype, antibody))).fillna(0)
Пример #11
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/iTreg_enhancers/2014_04_11/'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        condition = 'treg'
        motif_dirpath = yzer.get_filename(dirpath, 'Motifs')

        filename = yzer.get_filename(
            dirpath, '{}_{}_enhancers.txt'.format(condition, ab))

        data = yzer.import_file(filename)
        data = data.fillna(0)

        min_thresh = 20

        if False:
            subdata = data[data['tag_count'] > min_thresh]
            subdata = subdata[subdata['tag_count(2)'] > min_thresh]
            subdata = subdata[subdata['tag_count(3)'] <= 0]
            subdata = subdata[subdata['tag_count(4)'] <= 0]
            subdir = 'treg_shared_' + ab
Пример #12
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/TReg_enhancers/2013_03_19'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs')

    for antibody in ('me2', ):
        data = {}
        celltypes = ['treg', 'naive', 'th1', 'th2']
        for celltype in celltypes:
            data[celltype] = yzer.import_file(
                yzer.get_filename(
                    dirpath,
                    '{0}_{1}_versus_others.txt'.format(celltype,
                                                       antibody))).fillna(0)

            # Filter out promoters
            data[celltype] = data[celltype][data[celltype]['tss_id'] == 0]

            # Get venn-diagram "only" sets
            others = celltypes[:]
            others.remove(celltype)
'''
Created on Sep 27, 2014

@author: karmel
'''
from glasslab.dataanalysis.misc.rodrigo.samples import sample_name,\
    get_threshold
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Promoters'
    dirpath = yzer.get_path(dirpath)

    cond, seq, breed = ('naive', 'atac', '')
    sample_prefix = sample_name(cond, seq, breed)
    sample_dirpath = yzer.get_filename(dirpath, sample_prefix)
    filename = yzer.get_filename(sample_dirpath,
                                 sample_prefix + '_promoters.txt')

    data = yzer.import_file(filename)
    data = data.fillna(0)

    min_thresh = get_threshold(seq)
    data = data[data['tag_count'] >= min_thresh]

    fold = 2
    if True:
        # ATAC peaks that are absent in the FOXO1 KO
        foxo1_critical = data[
Пример #14
0
'''
Created on Sep 27, 2014

@author: karmel
'''
from glasslab.dataanalysis.misc.rodrigo.samples import sample_name,\
    get_threshold
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Enhancers'
    dirpath = yzer.get_path(dirpath)

    cond, seq, breed = ('naive', 'foxo1', '')
    sample_prefix = sample_name(cond, seq, breed)
    sample_dirpath = yzer.get_filename(dirpath, sample_prefix)
    filename = yzer.get_filename(sample_dirpath,
                                 sample_prefix + '_enhancers.txt')

    data = yzer.import_file(filename)
    data = data.fillna(0)

    min_thresh = get_threshold(seq)
    data = data[data['tag_count'] >= min_thresh]

    fold = 2
    if True:
        naive_only = data[data['lcmv_d12_foxo1_tag_count'] < min_thresh]
        yzer.run_homer(naive_only,
Пример #15
0
        l + '\n(count: {0})'.format(len(v)) for l, v in zip(labels, vals)
    ]
    title = 'Balbc vs NOD Log-fold Change According to SRF Binding'
    if True:
        ax = yzer.boxplot(
            vals,
            labels,
            title=title,
            xlabel='Transcript subset',
            ylabel='log2(NOD notx 1h GRO-seq/BALBc notx 1h GRO-seq)',
            show_outliers=False,
            show_plot=True,
            wide=True,
            save_dir=img_dirpath)
    if False:
        yzer = MotifAnalyzer()
        motifs_dirpath = yzer.get_filename(dirpath, 'motifs')
        # Motif finding for enhancers with SRF
        bg = yzer.get_filename(
            motifs_dirpath,
            'enhancer_at_least_10_tags_15/enhancer_at_least_10_tags_15_regions_for_homer.txt'
        )

        enh_with_srf = datasets[4]
        yzer.run_homer(enh_with_srf,
                       'enhancer_with_srf',
                       motifs_dirpath,
                       cpus=6,
                       center=False,
                       reverse=False,
                       preceding=False,
Пример #16
0
'''
Created on Feb 20, 2013

@author: karmel
'''
from __future__ import division
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/Rudensky_enhancers'
    dirpath = yzer.get_path(dirpath)
    motifs_dirpath = yzer.get_and_create_path(dirpath, 'motifs')

    peak_pretty = 'Foxp3'
    peak = peak_pretty.lower()
    foxp3 = yzer.import_file(
        yzer.get_filename(dirpath,
                          '{0}_1_with_naive_me2.txt'.format(peak))).fillna(0)
    naive = yzer.import_file(
        yzer.get_filename(dirpath,
                          'naive_me2_with_{0}.txt'.format(peak))).fillna(0)

    # Filter out promoters
    foxp3 = foxp3[foxp3['tss_id'] == 0]
    naive = naive[naive['tss_id'] == 0]

    # Get venn-diagram sets for foxp3/me2
    only_foxp3 = foxp3[foxp3['naive_id'] == 0]
    only_naive = naive[naive['foxp3_1_id'] == 0]
Пример #17
0
'''
Created on Jul 4, 2012

@author: karmel

The goal here is to see if we can tease out which features are 
predictive of characteristics of interest, such as pausing ratio
or transrepression. Worth a stab.
'''
from glasslab.dataanalysis.misc.gr_project_2012.elongation import get_rep_string
import sys
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland_2012/GR_Project/motifs'
    dirpath = yzer.get_path(dirpath)

    grouped = yzer.import_file(
        yzer.get_filename(dirpath, 'feature_vectors.txt'))

    paused = []
    if True:
        # Can we predict pausing ratio?

        # Minimal ratio in KLA+Dex vs. KLA pausing
        try:
            min_ratio = float(sys.argv[1])
        except IndexError:
            min_ratio = 2
        try:
'''
Created on Sep 7, 2012

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer


if __name__ == '__main__':
    yzer = MotifAnalyzer()
    
    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland_2012/GR_Project/motifs'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath,'from_peaks')
    
    transcripts = yzer.import_file(yzer.get_filename(dirpath, 'transcript_vectors.txt'))
    transcripts['glass_transcript_id'] = transcripts['id']
    
    for peak_type in ('gr_dex', 'gr_kla_dex', 'p65_kla_dex','p65_kla'):
        size = 100
        if True:
            all_data = yzer.import_file(yzer.get_filename(motif_dirpath,
                                                   '{0}_vectors.txt'.format(peak_type)))
        
            all_data = all_data.merge(transcripts, how='left', on='glass_transcript_id',suffixes=['','trans'])
            all_data = all_data.fillna(0)
            
            for super_name, data in (#('all', all_data,),
                                  #('refseq', all_data[(all_data['score'] > 10) & (all_data['has_refseq'] == 1) 
                                  #                & (all_data['touches'] == 't') | (all_data['relationship'] == 'is downstream of')],),
                                  #('distal', all_data[(all_data['distal'] == 't')],),
Пример #19
0
'''
Created on Mar 1, 2014

@author: karmel
'''
from __future__ import division
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/iTreg_enhancers/2014_02_14/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        for condition in ('treg', 'itreg'):
            cond_dirpath = yzer.get_filename(dirpath,
                                             '{}_{}'.format(condition, ab))

            filename = yzer.get_filename(
                cond_dirpath, '{}_{}_enhancers.txt'.format(condition, ab))

            data = yzer.import_file(filename)
            data = data.fillna(0)

            print('Total {} {}'.format(condition, ab))
            print(len(data))

            min_thresh = 20
            if True:
                data = data[data['tag_count'] > min_thresh]
Пример #20
0
'''
Created on Feb 8, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    base_dirpath = yzer.get_path(
        'karmel/GlassLab/Notes_and_Reports/NOD_BALBc/ThioMacs/Analysis_2013_02/'
    )
    dirpath = yzer.get_and_create_path(base_dirpath, 'motifs/')
    filename = yzer.get_filename(base_dirpath, 'transcript_vectors.txt')
    data = yzer.import_file(filename)
    data = data.fillna(0)

    # Promoters
    if False:
        refseq = data[data['has_refseq'] == 1]
        refseq = refseq[refseq['transcript_score'] >= 4]
        if True:
            yzer.run_homer(refseq,
                           'refseq_promoter',
                           dirpath,
                           cpus=6,
                           center=False,
                           reverse=False,
                           preceding=True,
                           size=400,
Пример #21
0
@author: karmel

Output TSV for all of the WT and Foxo1 KO ATAC seq samples from the LCMV
timecourse.

If running on Mac, make sure psycopg2 is set up:
sudo ln -s /Library/PostgreSQL/9.2/lib/libssl.1.0.0.dylib /usr/lib
sudo ln -s /Library/PostgreSQL/9.2/lib/libcrypto.1.0.0.dylib /usr/lib

'''
from glasslab.dataanalysis.misc.rodrigo.samples import get_breed_sets
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.utils.database import get_engine, dataframe_from_query
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Enhancers_set2'
    dirpath = yzer.get_path(dirpath)

    # Get DB engine
    engine = get_engine(uri='ec2-23-20-125-153.compute-1.amazonaws.com',
                        password='******')

    breed_sets = get_breed_sets()

    # Run and save output from sql queries
    for k, (samples, short_names) in enumerate(breed_sets):
        oth_breed = breed_sets[1 - k]
        for i, sample in enumerate(samples):
Пример #22
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/AND_TCR/Analysis/Chips1_2/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        for peptide in ('K99A', 'NoPep', 'PCC'):
            pep_dirpath = yzer.get_filename(dirpath,
                                            '{}_{}'.format(peptide, ab))

            if False:
                filename = yzer.get_filename(
                    pep_dirpath, '{}_{}_enhancers.txt'.format(peptide, ab))

                data = yzer.import_file(filename)
                data = data.fillna(0)

                yzer.run_homer(data,
                               'all',
                               pep_dirpath,
                               cpus=6,
                               center=True,
                               reverse=False,
Пример #23
0
'''
Created on Jul 5, 2012

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.dataanalysis.misc.gr_project_2012.elongation import get_rep_string
import sys

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland_2012/GR_Project/motifs'
    dirpath = yzer.get_path(dirpath)

    pausing_data = yzer.import_file(
        yzer.get_filename(dirpath, 'feature_vectors.txt'))
    data = yzer.import_file(
        yzer.get_filename(dirpath, 'transcript_vectors.txt'))

    try:
        min_ratio = float(sys.argv[1])
    except IndexError:
        min_ratio = 1.5

    if False:
        yzer.prep_files_for_homer(data,
                                  'all_transcripts_promoter',
                                  dirpath,
                                  center=False,
                                  reverse=False,
                                  preceding=True,
Пример #24
0
'''
Created on Jul 4, 2012

@author: karmel

'''
from __future__ import division
from glasslab.dataanalysis.misc.gr_project_2012.elongation import get_rep_string
import sys
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.dataanalysis.graphing.seq_grapher import SeqGrapher

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland 2012/KLA skew/'
    dirpath = yzer.get_path(dirpath)

    grouped = yzer.import_file(
        yzer.get_filename(dirpath, 'feature_vectors.txt'))

    repressed = []
    if True:
        # Can we predict pausing ratio?

        # Minimal ratio in KLA+Dex vs. KLA pausing
        try:
            min_ratio = float(sys.argv[1])
        except IndexError:
            min_ratio = -1
        try:
            thresh = int(sys.argv[3])
Пример #25
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/iTreg_enhancers/2014_02_14/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        for condition in ('treg', 'itreg', 'activated'):
            cond_dirpath = yzer.get_filename(dirpath,
                                             '{}_{}'.format(condition, ab))

            if True:
                filename = yzer.get_filename(
                    cond_dirpath, '{}_{}_enhancers.txt'.format(condition, ab))

                data = yzer.import_file(filename)
                data = data.fillna(0)

                yzer.run_homer(data,
                               'all',
                               cond_dirpath,
                               cpus=6,
                               center=True,
                               reverse=False,
Пример #26
0
'''
Created on Feb 12, 2013

@author: karmel
'''
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/iTreg_enhancers/2014_02_14/Motifs'
    dirpath = yzer.get_path(dirpath)

    for ab in ('me2', 'ac'):
        for condition in ('treg', 'itreg', 'activated'):
            cond_dirpath = yzer.get_filename(dirpath,
                                             '{}_{}'.format(condition, ab))

            if False:
                filename = yzer.get_filename(
                    cond_dirpath, '{}_{}_enhancers.txt'.format(condition, ab))

                data = yzer.import_file(filename)
                data = data.fillna(0)

                min_thresh = 20
                data = data[data['tag_count'] > min_thresh]
                yzer.run_homer(data,
                               'filtered_{}'.format(min_thresh),
                               cond_dirpath,
                               cpus=6,
Пример #27
0
'''
Created on Jul 4, 2012

@author: karmel

'''
from glasslab.dataanalysis.misc.gr_project_2012.elongation import get_rep_string
import sys
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.dataanalysis.graphing.seq_grapher import SeqGrapher

if __name__ == '__main__':
    yzer = MotifAnalyzer()
    dirpath = 'karmel/Desktop/Projects/Classes/Rotations/Finland 2012/KLA skew/'
    dirpath = yzer.get_path(dirpath)

    grouped = yzer.import_file(
        yzer.get_filename(dirpath, 'feature_vectors.txt'))

    repressed = []
    if True:
        # Can we predict pausing ratio?

        # Minimal ratio in KLA+Dex vs. KLA pausing
        try:
            min_ratio = float(sys.argv[1])
        except IndexError:
            min_ratio = -1
        try:
            thresh = int(sys.argv[3])
        except IndexError:
Пример #28
0
'''
Created on Feb 12, 2013

@author: karmel

Note that set 1 of Rudensky's Foxp3 chip has 2x as many peaks,
but he seems to use set 2 in the paper (?). Here we use
summed tags and peaks found in that.
'''
from __future__ import division
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from collections import OrderedDict

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/TReg_enhancers/2013_04_01'
    dirpath = yzer.get_path(dirpath)
    motif_dirpath = yzer.get_filename(dirpath, 'motifs')

    min_score = 10

    stats = OrderedDict()
    all_data = yzer.import_file(
        yzer.get_filename(dirpath, 'foxp3_with_treg_enhancers.txt')).fillna(0)
    stats['all'] = len(all_data)
    # Filter out promoters
    data = all_data[all_data['tss_id'] == 0]
    stats['enhancers'] = len(data)
    stats['me2_treg'] = sum(data['me2_id'] > 0)
    stats['ac_treg'] = sum(data['ac_id'] > 0)
Пример #29
0
'''
Created on Apr 12, 2013

@author: karmel
'''
from __future__ import division
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer

if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/CD4TCells/TReg_enhancers/2013_04_01'
    dirpath = yzer.get_path(dirpath)
    data = yzer.import_file(yzer.get_filename(
        dirpath, 'th1_with_stat1_ko.txt')).fillna(0)

    print len(data)
    data = data[data['tss_id'] == 0]
    data['ko_ratio'] = data['ko_id'] / data['th1_id']
    data['treg_ratio'] = data['treg_id'] / data['th1_id']
    enh = len(data)
    print enh
    print sum(data['ko_ratio'] < .5), sum(data['ko_ratio'] < .5) / enh
    print sum(data['treg_ratio'] < .5), sum(data['treg_ratio'] < .5) / enh
    print sum((data['treg_ratio'] < .5) & (data['ko_ratio'] < .5))
    print sum((data['treg_ratio'] < .5) & (data['ko_ratio'] < .5)) / enh
Пример #30
0
'''
Created on Oct 2, 2014

@author: karmel

Output TSV for all of the WT and Foxo1 KO ATAC seq samples from the first 
dataset.
'''
from glasslab.dataanalysis.misc.rodrigo.samples import SAMPLES, sample_name
from glasslab.dataanalysis.motifs.motif_analyzer import MotifAnalyzer
from glasslab.utils.database import get_engine, dataframe_from_query
if __name__ == '__main__':
    yzer = MotifAnalyzer()

    dirpath = 'karmel/Desktop/Projects/GlassLab/Notes_and_Reports/' +\
        'Miscellaneous_Collaborations/Rodrigo_CD8s_2014_09/Promoters'
    dirpath = yzer.get_path(dirpath)

    # Get DB engine
    engine = get_engine(uri='ec2-23-20-125-153.compute-1.amazonaws.com',
                        password='******')

    for i, (cond, seq, breed) in enumerate(SAMPLES):
        others = SAMPLES[:i] + SAMPLES[i + 1:]
        sql = '''select distinct on (p1.id) 
    chr."name" as chr_name, p1."start", p1."end", p1.tag_count,
    p1.*,
    '''
        selects, joins = [], []
        for j, (oth_cond, oth_seq, oth_breed) in enumerate(others):
            counter = j + 2