@@ -85,7 +85,7 @@ def compute_aRRA(g):
8585 GOI = geneList [g ]
8686 GOI_ranks_sig = list ()
8787 for i in range (L ):
88- if GOI == genes [i ] and (NB_pval [i ] < alpha ):
88+ if GOI == genes [i ] and (NB_pval [i ] < P_0 ):
8989 GOI_ranks_sig .append (ranks [i ])
9090 j = len (GOI_ranks_sig )
9191 if j > 0 :
@@ -103,7 +103,7 @@ def compute_aRRA(g):
103103def compute_aRRA_null (I ):
104104 I_ranks_sig = list ()
105105 for i in range (L ):
106- if (i in I ) and (NB_pval [i ] < alpha ):
106+ if (i in I ) and (NB_pval [i ] < P_0 ):
107107 I_ranks_sig .append (ranks [i ])
108108 j = len (I_ranks_sig )
109109 if j > 0 :
@@ -152,7 +152,7 @@ def GeneRankingAnalysis(sample):
152152 ListDir = config ['HitDir' ]
153153 EffDir = config ['EffDir' ]
154154 GeneDir = config ['GeneDir' ]
155- global alpha ; alpha = config ['alpha' ]
155+ alpha = config ['alpha' ]
156156 padj = config ['padj' ]
157157 num_cores = multiprocessing .cpu_count ()
158158 global r ; r = config ['sgRNAsPerGene' ]
@@ -162,6 +162,7 @@ def GeneRankingAnalysis(sample):
162162 pvalDir = config ['pvalDir' ]
163163 res = config ['dpi' ]
164164 svg = config ['svg' ]
165+ global P_0 ; P_0 = 0.05 # p-value Threshold for aRRA analysis
165166
166167 # ------------------------------------------------
167168 # Read sgRNA enrichment/depletion table
@@ -224,7 +225,7 @@ def GeneRankingAnalysis(sample):
224225 plt .savefig (sample + '_sgRNA_Efficiency.svg' )
225226 else : # no control replicates
226227 print ('WARNING: No control replicates found! No significant sgRNAs counted.' )
227- sigGuides = ['N/A' for k in range (len ( sigGuides ) )]
228+ sigGuides = ['N/A' for k in range (G )]
228229 # Plot histogram
229230 if not os .path .exists (EffDir ):
230231 os .makedirs (EffDir )
@@ -316,6 +317,7 @@ def GeneRankingAnalysis(sample):
316317 SortFlag = True
317318 metric = [- 1 for k in range (G )]
318319 metric_pval = [- 1 for k in range (G )]
320+ metric_pval0 = [- 1 for k in range (G )]
319321 metric_sig = ['N/A' for k in range (G )]
320322 elif GeneMetric == 'STARS' :
321323 # -------------------------------------------------
@@ -376,8 +378,9 @@ def GeneRankingAnalysis(sample):
376378 # -------------------------------------------------
377379 # p-value plots
378380 # -------------------------------------------------
379- print ('Plotting p-values ...' )
380- pvalHist_metric (metric_pval ,metric_pval0 ,GeneMetric ,pvalDir ,sample ,res ,svg )
381+ if min (NB_pval ) > - 1 :
382+ print ('Plotting p-values ...' )
383+ pvalHist_metric (metric_pval ,metric_pval0 ,GeneMetric ,pvalDir ,sample ,res ,svg )
381384
382385 # -------------------------------------------------
383386 # Output list
@@ -389,15 +392,16 @@ def GeneRankingAnalysis(sample):
389392 Results_df = pandas .DataFrame (data = {'gene' : [geneList [g ] for g in range (G )],
390393 GeneMetric : [metric [g ] for g in range (G )],
391394 GeneMetric + ' p_value' : ['%.2E' % Decimal (metric_pval [g ]) for g in range (G )],
392- GeneMetric + ' adj. p_value ' : ['%.2E' % Decimal (metric_pval0 [g ]) for g in range (G )],
393- 'significant' : [metric_sig [g ] for g in range (G )],
395+ GeneMetric + ' FDR ' : ['%.2E' % Decimal (metric_pval0 [g ]) for g in range (G )],
396+ 'significant' : [str ( metric_sig [g ]) for g in range (G )],
394397 '# signif. sgRNAs' : [sigGuides [g ] for g in range (G )]},
395- columns = ['gene' ,GeneMetric ,GeneMetric + ' p_value' ,GeneMetric + ' adj. p_value ' ,\
398+ columns = ['gene' ,GeneMetric ,GeneMetric + ' p_value' ,GeneMetric + ' FDR ' ,\
396399 'significant' ,'# signif. sgRNAs' ])
397400 Results_df_0 = Results_df .sort_values (['significant' ,GeneMetric ],ascending = [False ,SortFlag ])
398401 GeneListFilename = filename [0 :- 14 ]+ '_' + GeneMetric + '_' + 'P' + str (Np )+ '_GeneList.tsv'
399402 Results_df_0 .to_csv (GeneListFilename , sep = '\t ' , index = False )
400403 if SheetFormat == 'xlsx' :
404+ print ('Converting to xlsx ...' )
401405 GeneListFilename = filename [0 :- 14 ]+ '_' + GeneMetric + '_' + 'P' + str (Np )+ '_GeneList.xlsx'
402406 Results_df_0 .to_excel (GeneListFilename )
403407
0 commit comments