0
|
1 #!/usr/bin/perl
|
|
2
|
|
3
|
|
4 # This version (v.12) has an option of datatype (Refseq vs Ensembl).
|
|
5
|
|
6 if(@ARGV<13) { print "usage: $0 sample_name readcount_dir midrefix(samplename.midrefix.i.all.gMA) EUMA_out_dir FVKM_out_dir LVKM_out_dir EUMA_cut mapping_stat_column mapping_stat_file presence_of_i_at_end_of_midrefix[1/0] final_adjustment_option[1:average & rescaling/2:max & no rescaling] gene2NM_file gene2symbol_file datatype(R(Refseq)_or_E(Ensembl)) scriptdir\n"; exit; }
|
|
7
|
|
8 my $sample = shift @ARGV;
|
|
9 my $readcount_dir = shift @ARGV;
|
|
10 my $midrefix = shift @ARGV;
|
|
11 my $EUMA_out_dir = shift @ARGV;
|
|
12 my $FVKM_out_dir = shift @ARGV;
|
|
13 my $LVKM_out_dir = shift @ARGV;
|
|
14 my $EUMA_cut = shift @ARGV;
|
|
15 my $mapping_stat_column = shift @ARGV;
|
|
16 my $mapping_stat_file = shift @ARGV;
|
|
17 my $i_after_midrefix = shift @ARGV;
|
|
18 my $final_adjustment_option = shift @ARGV;
|
|
19 my $gene2NM_file = shift @ARGV;
|
|
20 my $gene2symbol_file = shift @ARGV;
|
|
21 my $datatype = shift @ARGV;
|
|
22 my $scriptdir = shift @ARGV;
|
|
23
|
|
24 if(!-d $EUMA_out_dir) { `mkdir -p $EUMA_out_dir`; }
|
|
25 if(!-d $FVKM_out_dir) { `mkdir -p $FVKM_out_dir`; }
|
|
26 if(!-d $LVKM_out_dir) { `mkdir -p $LVKM_out_dir`;}
|
|
27
|
|
28 #$perlcommand = "perl -I $scriptdir";
|
|
29 $perlcommand = "perl";
|
|
30
|
|
31 $gNIR2gFVKM_script = "$scriptdir/gNIR2gFVKM.pl";
|
|
32 $iNIR2iFVKM_script = "$scriptdir/iNIR2iFVKM.pl";
|
|
33
|
|
34 $combine_gFVKM_iFVKM_script = "$scriptdir/combine_gFVKM_iFVKM_max.pl";
|
|
35
|
|
36 $normalize_gFVKM_script = "$scriptdir/normalize_gFVKM_5.pl";
|
|
37 $normalize_iFVKM_script = "$scriptdir/normalize_iFVKM_6.pl";
|
|
38 $NR_filter_script = "$scriptdir/filter_exclusive_NRgene_from_gene_table.pl";
|
|
39
|
|
40
|
|
41 #computing gFVKM and iFVKM, from EUMA/iEUMA and gMA/iMA files.
|
|
42 #`$perlcommand $gNIR2gFVKM_script $readcount_dir/$sample.$midrefix.gNIR $EUMA_out_dir/$sample.$midrefix.gEUMA > $FVKM_out_dir/$sample.$midrefix.gFVKM`;
|
|
43 #`$perlcommand $iNIR2iFVKM_script $readcount_dir/$sample.$midrefix.iNIR $EUMA_out_dir/$sample.$midrefix.iEUMA > $FVKM_out_dir/$sample.$midrefix.iFVKM`;
|
|
44
|
|
45 `$gNIR2gFVKM_script $readcount_dir/$sample.$midrefix.gNIR $EUMA_out_dir/$sample.$midrefix.gEUMA > $FVKM_out_dir/$sample.$midrefix.gFVKM`;
|
|
46 `$iNIR2iFVKM_script $readcount_dir/$sample.$midrefix.iNIR $EUMA_out_dir/$sample.$midrefix.iEUMA > $FVKM_out_dir/$sample.$midrefix.iFVKM`;
|
|
47
|
|
48 #updating gFVKM & iFVKM baed on each other
|
|
49 `$perlcommand $combine_gFVKM_iFVKM_script $FVKM_out_dir/$sample.$midrefix.gFVKM $FVKM_out_dir/$sample.$midrefix.iFVKM $gene2NM_file $EUMA_cut $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.gFVKM $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.iFVKM`;
|
|
50
|
|
51 #normalize and compute LGPM/LTPM
|
|
52 #`$perlcommand $normalize_gFVKM_script $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.gFVKM $mapping_stat_file $gene2symbol_file $mapping_stat_column $sample $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.gLVKM`;
|
|
53 #`$perlcommand $normalize_iFVKM_script $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.iFVKM $mapping_stat_file $gene2symbol_file $mapping_stat_column $sample $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.iLVKM`;
|
|
54
|
|
55 `$normalize_gFVKM_script $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.gFVKM $mapping_stat_file $gene2symbol_file $mapping_stat_column $sample $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.gLVKM`;
|
|
56 `$normalize_iFVKM_script $FVKM_out_dir/$sample.$midrefix.$EUMA_cut.final.iFVKM $mapping_stat_file $gene2symbol_file $mapping_stat_column $sample $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.iLVKM`;
|
|
57
|
|
58 #filter NR-only genes
|
|
59 if($datatype eq 'R'){
|
|
60 `$perlcommand $NR_filter_script $gene2NM_file $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.gLVKM > $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.-NR.gLVKM`;
|
|
61 `$perlcommand $NR_filter_script $gene2NM_file $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.iLVKM > $LVKM_out_dir/$sample.$midrefix.$EUMA_cut.-NR.iLVKM`;
|
|
62 }
|
|
63
|
|
64
|