예제 #1
0
    def test_08_jaaba_to_pergola(self):
        """
        Testing jaaba_to_pergola script
        """ 
#         print >> stderr,"====================== test 8"
        
        data_in = PATH + "/jaaba_data/scores_chase.mat"  
        jaaba_scores_to_csv(input_file=data_in, path_w=TEST, name_file="file_out", norm=True, data_type="chase")
        map_j = PATH + "/jaaba_data/jaaba2pergola.txt"
        int_data_j = jaaba_scores_to_intData(input_file=data_in, map_jaaba=map_j, name_file="JAABA_scores", delimiter="\t", norm=True, data_type="a")
        print >> stderr, "Min value jaaba====== %d" % int_data_j.min
예제 #2
0
    def test_08_jaaba_to_pergola(self):
        """
        Testing jaaba_to_pergola script
        """
        #         print >> stderr,"====================== test 8"

        data_in = PATH + "/jaaba_data/scores_chase.mat"
        jaaba_scores_to_csv(input_file=data_in,
                            path_w=TEST,
                            name_file="file_out",
                            norm=True,
                            data_type="chase")
        map_j = PATH + "/jaaba_data/jaaba2pergola.txt"
        int_data_j = jaaba_scores_to_intData(input_file=data_in,
                                             map_jaaba=map_j,
                                             name_file="JAABA_scores",
                                             delimiter="\t",
                                             norm=True,
                                             data_type="a")
        print >> stderr, "Min value jaaba====== %d" % int_data_j.min
예제 #3
0
def jaaba_to_pergola(option, args):
    """
    main function
    sc: scores to csv 
    sp: scores to pergola
    fc: features to csv
    fp: features to pergola
    """

    for input_file in args.input:
        if option == "sc" or option =="sp":

            print >> stderr,     "@@@jaaba_to_pergola.py: Input file is %s" % input_file

            tmp_track = NamedTemporaryFile(prefix='jaaba_csv', suffix='.csv', delete=True)

            name_tmp = splitext(basename(tmp_track.name))[0]
            path_out = dirname(abspath(tmp_track.name))

            jaaba_parsers.jaaba_scores_to_csv(input_file=input_file, path_w=path_out, name_file=name_tmp, norm=True, data_type="chase")

            output_file = tmp_track.name

            if option == "sc":
                path_w = dirname(abspath(input_file))
                f_out = path_w + '/' + 'JAABA_scores.csv'

                copy (tmp_track.name, f_out)
                print >> stderr,  "@@@jaaba_to_pergola.py: Scores dumped in %s" % f_out

            elif option == "sp":
                pergola_rules.pergola_rules(path=output_file, map_file_path=args.mapping_file, sel_tracks=args.tracks,
                      list=args.list, range=args.range, track_actions=args.track_actions,
                      data_types_actions=args.data_types_actions, data_types_list=args.data_types_list,
                      write_format=args.format, relative_coord=args.relative_coord,
                      intervals_gen=args.intervals_gen, multiply_f=args.multiply_intervals,
                      no_header=args.no_header, fields2read=args.fields_read, window_size=args.window_size,
                      no_track_line=args.no_track_line, separator=args.field_separator,
                      bed_lab_sw=args.bed_label, color_dict=args.color_file, window_mean=args.window_mean)

        elif option == "fc" or option == "fp":
            print >> stderr,  "@@@jaaba_to_pergola.py: Extracting Jaaba features from %s" % input_file
            print >> stderr,  "@@@jaaba_to_pergola.py: Selected feature/s %s" %args.feature


            if not args.dumping_dir:
                dumping_dir = getcwd()
                print >> stderr, "@@@jaaba_to_pergola.py: No path selected, files dump into path: ", dumping_dir
            else:
                dumping_dir = args.dumping_dir
                print >> stderr, "@@@jaaba_to_pergola.py: Files dump into path: ", dumping_dir

            path_tmp = mkdtemp()

            for f in args.feature:
                jaaba_parsers.extract_jaaba_features(dir_perframe=input_file, map_jaaba="", delimiter="\t",
                                               feature=f, output="csv", path_w=path_tmp)

                tmp_file = path_tmp + '/' + f + '.csv'

                if option == "fc":
                    f_out = dumping_dir + '/' + f +  '.csv'

                    copy (tmp_file, f_out)

                elif option == "fp":
                    chdir(dumping_dir)
    #                 pergola_rules.main(path=tmp_file, map_file_path=args.mapping_file, sel_tracks=args.tracks,
                    pergola_rules.pergola_rules(path=tmp_file, map_file_path=args.mapping_file, sel_tracks=args.tracks,
                      list=args.list, range=args.range, track_actions=args.track_actions,
                      data_types_actions=args.data_types_actions, data_types_list=args.data_types_list,
                      write_format=args.format, relative_coord=args.relative_coord,
                      intervals_gen=args.intervals_gen, multiply_f=args.multiply_intervals,
                      no_header=args.no_header, fields2read=args.fields_read, window_size=args.window_size,
                      no_track_line=args.no_track_line, separator=args.field_separator,
                      bed_lab_sw=args.bed_label, color_dict=args.color_file, window_mean=args.window_mean)

            rmtree(path_tmp)
예제 #4
0
def jaaba_to_pergola(option, args):
    """
    main function
    sc: scores to csv 
    sp: scores to pergola
    fc: features to csv
    fp: features to pergola
    """

    for input_file in args.input:
        if option == "sc" or option == "sp":

            print >> stderr, "@@@jaaba_to_pergola.py: Input file is %s" % input_file

            tmp_track = NamedTemporaryFile(prefix='jaaba_csv',
                                           suffix='.csv',
                                           delete=True)

            name_tmp = splitext(basename(tmp_track.name))[0]
            path_out = dirname(abspath(tmp_track.name))

            jaaba_parsers.jaaba_scores_to_csv(input_file=input_file,
                                              path_w=path_out,
                                              name_file=name_tmp,
                                              norm=True,
                                              data_type="chase")

            output_file = tmp_track.name

            if option == "sc":
                path_w = dirname(abspath(input_file))
                f_out = path_w + '/' + 'JAABA_scores.csv'

                copy(tmp_track.name, f_out)
                print >> stderr, "@@@jaaba_to_pergola.py: Scores dumped in %s" % f_out

            elif option == "sp":
                pergola_rules.pergola_rules(
                    path=output_file,
                    map_file_path=args.mapping_file,
                    sel_tracks=args.tracks,
                    list=args.list,
                    range=args.range,
                    track_actions=args.track_actions,
                    data_types_actions=args.data_types_actions,
                    data_types_list=args.data_types_list,
                    write_format=args.format,
                    relative_coord=args.relative_coord,
                    intervals_gen=args.intervals_gen,
                    multiply_f=args.multiply_intervals,
                    no_header=args.no_header,
                    fields2read=args.fields_read,
                    window_size=args.window_size,
                    no_track_line=args.no_track_line,
                    separator=args.field_separator,
                    bed_lab_sw=args.bed_label,
                    color_dict=args.color_file,
                    window_mean=args.window_mean)

        elif option == "fc" or option == "fp":
            print >> stderr, "@@@jaaba_to_pergola.py: Extracting Jaaba features from %s" % input_file
            print >> stderr, "@@@jaaba_to_pergola.py: Selected feature/s %s" % args.feature

            if not args.dumping_dir:
                dumping_dir = getcwd()
                print >> stderr, "@@@jaaba_to_pergola.py: No path selected, files dump into path: ", dumping_dir
            else:
                dumping_dir = args.dumping_dir
                print >> stderr, "@@@jaaba_to_pergola.py: Files dump into path: ", dumping_dir

            path_tmp = mkdtemp()

            for f in args.feature:
                jaaba_parsers.extract_jaaba_features(dir_perframe=input_file,
                                                     map_jaaba="",
                                                     delimiter="\t",
                                                     feature=f,
                                                     output="csv",
                                                     path_w=path_tmp)

                tmp_file = path_tmp + '/' + f + '.csv'

                if option == "fc":
                    f_out = dumping_dir + '/' + f + '.csv'

                    copy(tmp_file, f_out)

                elif option == "fp":
                    chdir(dumping_dir)
                    #                 pergola_rules.main(path=tmp_file, map_file_path=args.mapping_file, sel_tracks=args.tracks,
                    pergola_rules.pergola_rules(
                        path=tmp_file,
                        map_file_path=args.mapping_file,
                        sel_tracks=args.tracks,
                        list=args.list,
                        range=args.range,
                        track_actions=args.track_actions,
                        data_types_actions=args.data_types_actions,
                        data_types_list=args.data_types_list,
                        write_format=args.format,
                        relative_coord=args.relative_coord,
                        intervals_gen=args.intervals_gen,
                        multiply_f=args.multiply_intervals,
                        no_header=args.no_header,
                        fields2read=args.fields_read,
                        window_size=args.window_size,
                        no_track_line=args.no_track_line,
                        separator=args.field_separator,
                        bed_lab_sw=args.bed_label,
                        color_dict=args.color_file,
                        window_mean=args.window_mean)

            rmtree(path_tmp)
                    required=True)

args = parser.parse_args()

chase_score_f = args.score_file
mappings_jaaba = mapping.MappingInfo(args.mapping_file)
tag_group = args.tag_group
annotated_behavior = args.behavior

tmp_track = NamedTemporaryFile(prefix='jaaba_csv', suffix='.csv', delete=True)
name_tmp = splitext(basename(tmp_track.name))[0]
path_out = dirname(abspath(tmp_track.name))

jaaba_parsers.jaaba_scores_to_csv(input_file=chase_score_f,
                                  path_w=path_out,
                                  name_file=name_tmp,
                                  norm=True,
                                  data_type=annotated_behavior)

scores_chase_int = intervals.IntData(
    tmp_track.name, map_dict=mappings_jaaba.correspondence).read()

data_type_col = {annotated_behavior: 'blue'}

if tag_group == "pBDPGAL4":
    #    data_type_col = {annotated_behavior: 'orange'}
    data_type_col = {annotated_behavior: 'red'}

dict_bed_annotated_int = scores_chase_int.convert(
    mode="bed", color_restrictions=data_type_col)
예제 #6
0
# from scipy    import io #parsers
# from scipy    import nditer
from numpy import hstack  #parsers
from numpy import mean  #parsers
# from pergola  import mapping#parsers
# from pergola  import intervals#parsers
from pergola import parsers
from pergola import jaaba_parsers
# from tempfile import NamedTemporaryFile#parsers

# This part has been included in the function
# jaaba_data = io.loadmat('/Users/jespinosa/JAABA_MAC_0.5.1/sampledata/Chase1_TrpA_Rig1Plate15BowlA_20120404T141155/scores_chase.mat')

jaaba_parsers.jaaba_scores_to_csv(
    input_file=
    '/Users/jespinosa/JAABA_MAC_0.5.1/sampledata_v0.5/Chase1_TrpA_Rig1Plate15BowlA_20120404T141155/scores_chase.mat',
    path_w='/Users/jespinosa/git/pergola/test',
    norm=True,
    data_type="chase")

print("You correctly transform your JAABA scores into a csv file")

input_jaaba_file = '/Users/jespinosa/JAABA_MAC_0.5.1/sampledata_v0.5/Chase1_TrpA_Rig1Plate15BowlA_20120404T141155/scores_chase.mat'
map_file_jaaba = "/Users/jespinosa/git/pergola/test/jaaba2pergola.txt"
int_data_jaaba = jaaba_parsers.jaaba_scores_to_intData(
    input_file=input_jaaba_file,
    map_jaaba=map_file_jaaba,
    norm=True,
    data_type="chase")

print int_data_jaaba.min
print int_data_jaaba.max