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
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)
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)
# 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