Skip to content

Commit

Permalink
added --max-ppsize for xcor
Browse files Browse the repository at this point in the history
  • Loading branch information
leepc12 committed May 24, 2018
1 parent 2344584 commit ae0a6b5
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 2 deletions.
1 change: 1 addition & 0 deletions chipseq.py
Expand Up @@ -148,6 +148,7 @@ def get_default_param_dict(): # this is not ordered
"subsample_xcor" : { "_order_" : 1, "_default_" : "15M", "_help_" : "Number of reads to be subsampled for cross corr. analysis only." },
"speak_xcor" : { "_order_" : 2, "_default_" : -1, "_help_" : "Set user-defined cross-corr. peak strandshift (-speak= in run_spp.R). Use -1 to disable." },
"extra_param_xcor" : { "_order_" : 3, "_default_" : "", "_help_" : "Set extra parameters for run_spp.R" },
"max_ppsize_xcor" : { "_order_" : 4, "_default_" : "", "_help_" : "R stack size (R parameter --max-ppsize=; between 5000 and 5000000) for cross-corr. analysis." },
},

"callpeak" : { "_order_" : 4, "_group_desc_" : "Peak-calling settings. spp and macs2 are stable for calling peaks and IDR analysis on called peaks. peakseq and gem are currently in BETA test.",
Expand Down
2 changes: 1 addition & 1 deletion modules/callpeak_macs2_chipseq.bds
Expand Up @@ -95,7 +95,7 @@ string[] macs2_chipseq_npeak_and_signal( string tag, string ctl_tag, string frag
sys macs2 callpeak -t $tag $ctl -f BED -n $peak_o_dir/$prefix_basename -g $gensz -p $pval_thresh_macs2 --nomodel --shift $shift_macs2 $extsize_param --keep-dup $keep_dup_macs2 -B --SPMR $extra_param_macs2

//# Sort by Col8 in descending order and replace long peak names in Column 4 with Peak_<peakRank>
sys sort -k 8gr,8gr "$prefix"_peaks.narrowPeak | awk 'BEGIN{OFS="\t"}{$4="Peak_"NR ; print $0}' > $npeakfile.tmp
sys sort -k 8gr,8gr "$prefix"_peaks.narrowPeak | awk 'BEGIN{OFS="\t"}{$4="Peak_"NR; if ($2<0) $2=0; if ($3<0) $3=0; print $0}' > $npeakfile.tmp
sys head -n $cap_num_peak_macs2 $npeakfile.tmp | gzip -nc > $npeakfile
sys rm -f $npeakfile.tmp

Expand Down
6 changes: 5 additions & 1 deletion modules/postalign_xcor.bds
Expand Up @@ -8,6 +8,7 @@ include "module_template.bds"
help == postalign bed/tagalign settings
fraglen0 := false help (LEGACY PARAM) Set predefined fragment length as zero for cross corr. analysis (add -speak=0 to run_spp.R).
speak_xcor := -1 help Set user-defined cross-corr. peak strandshift (-speak= in run_spp.R). Use -1 to disable (default: -1).
max_ppsize_xcor := "" help R stack size (R parameter --max-ppsize=; between 5000 and 5000000) for cross corr. analysis.
extra_param_xcor := "" help Set extra parameters for run_spp.R (cross-corr. analysis only).
mem_xcor := "15G" help Max. memory for cross-corr. analysis (default: 15G).

Expand All @@ -22,6 +23,7 @@ void init_postalign_xcor() {
speak_xcor = get_conf_val_int( speak_xcor, ["speak_xcor"] )
extra_param_xcor= get_conf_val( extra_param_xcor, ["extra_param_xcor"] )
mem_xcor = get_conf_val( mem_xcor, ["mem_xcor"] )
max_ppsize_xcor = get_conf_val( max_ppsize_xcor, ["max_ppsize_xcor"] )

// backward compatibility
if ( speak_xcor == -1 && fraglen0 ) speak_xcor = 0
Expand All @@ -31,6 +33,7 @@ void init_postalign_xcor() {
print( "User-defined cross-corr. peak strandshift\t: $speak_xcor\n")
print( "Extra parameters for cross-corr. analysis\t: $extra_param_xcor\n")
print( "Max. memory for cross-corr. analysis\t\t: $mem_xcor\n")
print( "Stack size for cross-corr. analysis\t\t:$max_ppsize_xcor\n")
}

string subsample_tag_PE_for_xcor( string tag, int nlines, bool non_mito, string o_dir, string group ) {
Expand Down Expand Up @@ -86,6 +89,7 @@ string[] xcor( string tag, string o_dir, string group, int nth_xcor ) {
xcor_score := "$prefix.cc.qc"
xcor_plot := "$prefix.cc.plot.pdf"
param_speak := speak_xcor > -1 ? "-speak=$speak_xcor" : ""
extra_param := max_ppsize_xcor ? "--max-ppsize=$max_ppsize_xcor " : ""

in := [ tag ]
out := [ xcor_score, xcor_plot ]
Expand All @@ -106,7 +110,7 @@ string[] xcor( string tag, string o_dir, string group, int nth_xcor ) {

//# CCSCORE FILE format
//# Filename <tab> numReads <tab> estFragLen <tab> correstFragLen <tab> PhantomPeak <tab> corrphantomPeak <tab> argmincorr <tab> mincorr <tab> phantomPeakCoef <tab> relPhantomPeakCoef <tab> QualityTag
sys Rscript ${RUN_SPP} -rf \
sys Rscript $extra_param ${RUN_SPP} -rf \
-c=$tag -p=$nth_xcor \
-filtchr=chrM -savp=$xcor_plot -out=$xcor_score $param_speak $extra_param_xcor
sys sed -r 's/,[^\t]+//g' $xcor_score > $xcor_score.tmp
Expand Down

0 comments on commit ae0a6b5

Please sign in to comment.