statistics~all-sample-combinations-DESeq2-edgeR

DESeq2, edgeR

input_1:count table

input_2:sample information file

input_2/sample.txt

id	condition
0a-150_S1_L001_R1_001.fastq.gz	0
0a-20_S1_L001_R1_001.fastq.gz	0
0c-150_S1_L001_R1_001.fastq.gz	0
0c-20_S1_L001_R1_001.fastq.gz	0
20a-150_S1_L001_R1_001.fastq.gz	20
20a-20_S1_L001_R1_001.fastq.gz	20
20c-150_S1_L001_R1_001.fastq.gz	20
20c-20_S1_L001_R1_001.fastq.gz	20
50b-150_S1_L001_R1_001.fastq.gz	50

input_3:Trinotate.xls3.(isoform or gene).cnt [optional]

input_3/Trinotate.xls3.isoform.cnt

Command

statistics~all-sample-combinations-DESeq2-edgeR -c 8 -m 32 -t input_3/Trinotate.xls3.isoform.cnt input_1/kallisto.isoform.counts.matrix input_2/sample.txt

Output

0_result.html

view all outputs

Log

pp statistics~all-sample-combinations-DESeq2-edgeR -c 8 -m 32 -t input_3/Trinotate.xls3.isoform.cnt input_1/kallisto.isoform.counts.matrix input_2/sample.txt 
Checking the realpath of input files.
0 input_1/kallisto.isoform.counts.matrix
0 input_2/sample.txt
0 input_3/Trinotate.xls3.isoform.cnt
script: /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR "$scriptdir"/statistics~DESeq2 "$scriptdir"/statistics~edgeR
script: /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR "$scriptdir"/statistics~DESeq2 "$scriptdir"/statistics~edgeR "$scriptdir"/statistics~scatter_with_variance
c2997108/centos6:3 c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 centos:centos6
using docker
+ set -o pipefail
+ p=0.05
+ sed 's/\r//g' input_1/kallisto.isoform.counts.matrix
+ input_1=input.rem.table
+ cat input_2/sample.txt
+ sed 's/\r//g'
+ sed '/^$/d'
+ sed 's/ \+/\t/g; s/\t\+/\t/g; s/\t\+$//'
+ awk '-F\t' '{gsub(/[^A-Za-z0-9._\t-]/,"_",$0); print $0}'
+ awk '-F\t' '{OFS="\t"; sub(/[.]gz$/,"",$1); sub(/[.]f(ast|)q$/,"",$1); print $0}'
+ head -n 1 input.rem.table
+ cut -f 2-
+ sed 's/\t/\n/g'
+ awk '-F\t' '
  FILENAME==ARGV[1]{cat[$1]=$2}
  FILENAME==ARGV[2]{
   if(FNR==1){print "id\tcondition"};
   a=$1; sub(/[.]gz$/,"",a); sub(/[.]f(ast|)q$/,"",a);
   if(a in cat){print $1"\t"cat[a]}
  }
 ' sample.txt2 /dev/stdin
+ '[' '!' -e isoforms.count_table ']'
+ ln -s input.rem.table isoforms.count_table
+ tail -n+2 sample.input.txt
+ cut -f 2
+ sort -V
+ uniq
+ awk '{a[NR]=$1} END{for(i=1;i<=NR-1;i++){for(j=i+1;j<=NR;j++){print a[i]"\t"a[j]}}}'
+ cat
+ cat
+ countfile=isoforms.count_table
+ echo '

DEG analysis

Differential expression analysis by DESeq2 with scatter plot of read counts (counts per million)

' + bash run-make-deg-html.sh isoforms.count_table DESeq2 0_result.html transcript + echo '

Differential expression analysis by edgeR with scatter plot of read counts (counts per million)

' + bash run-make-deg-html.sh isoforms.count_table edgeR 0_result.html transcript + echo '' + xargs -I '{}' -P 8 bash -c '{}' +++ cat sample.input.pair.txt +++ wc -l ++ seq 1 3 + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 1 sample.input.pair.txt ++ tail -n 1 ++ cut -f 1 + g1=0 ++ head -n 1 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=20 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_193411_157_5601 + echo pp20220928_193411_157_5601 + docker run --name pp20220928_193411_157_5601 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.0.20.sh + awk '-F\t' -v g1=0 -v g2=20 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=0 '$2==g1{print $1}' sample.input.0.20.txt + awk '-F\t' -v g2=20 '$2==g2{print $1}' sample.input.0.20.txt + awk '-F\t' -v g1=0 -v g2=20 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{ORS=""; print $1; for(i=2;i<=NF;i++){if(flag[$i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.0.20.isoform.R -i 0 -j 20 -p 0.05 isoforms.count_table.0.20.txt sample.input.0.20.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.0.20.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.0.20.isoform.R -i 0 -j 20 -p 0.05 isoforms.count_table.0.20.txt sample.input.0.20.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.0.20.isoform.txt 2>&1' + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 2 sample.input.pair.txt ++ tail -n 1 ++ cut -f 1 + g1=0 ++ head -n 2 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=50 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_193419_985_8518 + echo pp20220928_193419_985_8518 + docker run --name pp20220928_193419_985_8518 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.0.50.sh + awk '-F\t' -v g1=0 -v g2=50 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=0 '$2==g1{print $1}' sample.input.0.50.txt + awk '-F\t' -v g2=50 '$2==g2{print $1}' sample.input.0.50.txt + awk '-F\t' -v g1=0 -v g2=50 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{ORS=""; print $1; for(i=2;i<=NF;i++){if(flag[$i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.0.50.isoform.R -i 0 -j 50 -p 0.05 isoforms.count_table.0.50.txt sample.input.0.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.0.50.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.0.50.isoform.R -i 0 -j 50 -p 0.05 isoforms.count_table.0.50.txt sample.input.0.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.0.50.isoform.txt 2>&1' + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 3 sample.input.pair.txt ++ tail -n 1 ++ cut -f 1 + g1=20 ++ head -n 3 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=50 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_193429_103_6130 + echo pp20220928_193429_103_6130 + docker run --name pp20220928_193429_103_6130 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.20.50.sh + awk '-F\t' -v g1=20 -v g2=50 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=20 '$2==g1{print $1}' sample.input.20.50.txt + awk '-F\t' -v g2=50 '$2==g2{print $1}' sample.input.20.50.txt + awk '-F\t' -v g1=20 -v g2=50 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{ORS=""; print $1; for(i=2;i<=NF;i++){if(flag[$i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.20.50.isoform.R -i 20 -j 50 -p 0.05 isoforms.count_table.20.50.txt sample.input.20.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.20.50.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.20.50.isoform.R -i 20 -j 50 -p 0.05 isoforms.count_table.20.50.txt sample.input.20.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.20.50.isoform.txt 2>&1' ++ onerror 156 ++ status=123 ++ script=/yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR ++ line=156 ++ shift ++ set +x ------------------------------------------------------------ Error occured on /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR [Line 156]: Status 123 PID: 17210 User: yoshitake.kazutoshi Current directory: /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR Command line: /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR ------------------------------------------------------------ PID: 17208 pp runtime error. Checking the realpath of input files. 0 input_1/kallisto.isoform.counts.matrix 0 input_2/sample.txt 0 input_3/Trinotate.xls3.isoform.cnt script: /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR "$scriptdir"/statistics~DESeq2 "$scriptdir"/statistics~edgeR script: /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~all-sample-combinations-DESeq2-edgeR "$scriptdir"/statistics~DESeq2 "$scriptdir"/statistics~edgeR "$scriptdir"/statistics~scatter_with_variance c2997108/centos6:3 c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 centos:centos6 using docker + set -o pipefail + p=0.05 + sed 's/\r//g' input_1/kallisto.isoform.counts.matrix + input_1=input.rem.table + cat input_2/sample.txt + sed 's/\r//g' + sed '/^$/d' + awk '-F\t' '{gsub(/[^A-Za-z0-9._\t-]/,"_",$0); print $0}' + sed 's/ \+/\t/g; s/\t\+/\t/g; s/\t\+$//' + awk '-F\t' '{OFS="\t"; sub(/[.]gz$/,"",$1); sub(/[.]f(ast|)q$/,"",$1); print $0}' + head -n 1 input.rem.table + cut -f 2- + sed 's/\t/\n/g' + awk '-F\t' ' FILENAME==ARGV[1]{cat[$1]=$2} FILENAME==ARGV[2]{ if(FNR==1){print "id\tcondition"}; a=$1; sub(/[.]gz$/,"",a); sub(/[.]f(ast|)q$/,"",a); if(a in cat){print $1"\t"cat[a]} } ' sample.txt2 /dev/stdin + '[' '!' -e isoforms.count_table ']' + tail -n+2 sample.input.txt + cut -f 2 + sort -V + uniq + awk '{a[NR]=$1} END{for(i=1;i<=NR-1;i++){for(j=i+1;j<=NR;j++){print a[i]"\t"a[j]}}}' + cat + cat + countfile=isoforms.count_table + echo '

DEG analysis

Differential expression analysis by DESeq2 with scatter plot of read counts (counts per million)

' + bash run-make-deg-html.sh isoforms.count_table DESeq2 0_result.html transcript + echo '

Differential expression analysis by edgeR with scatter plot of read counts (counts per million)

' + bash run-make-deg-html.sh isoforms.count_table edgeR 0_result.html transcript + echo '' + xargs -I '{}' -P 8 bash -c '{}' +++ cat sample.input.pair.txt +++ wc -l ++ seq 1 3 + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 1 sample.input.pair.txt ++ tail -n 1 ++ cut -f 1 + g1=0 ++ head -n 1 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=20 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_194903_984_12108 + echo pp20220928_194903_984_12108 + docker run --name pp20220928_194903_984_12108 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.0.20.sh + awk '-F\t' -v g1=0 -v g2=20 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=0 '$2==g1{print $1}' sample.input.0.20.txt + awk '-F\t' -v g2=20 '$2==g2{print $1}' sample.input.0.20.txt + awk '-F\t' -v g1=0 -v g2=20 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{if(FNR==1){for(i=2;i<=NF;i++){if(flag[$i]==1){flag2[i]=1}}}; ORS=""; print $1; for(i=2;i<=NF;i++){if(flag2[i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.0.20.isoform.R -i 0 -j 20 -p 0.05 isoforms.count_table.0.20.txt sample.input.0.20.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.0.20.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.0.20.isoform.R -i 0 -j 20 -p 0.05 isoforms.count_table.0.20.txt sample.input.0.20.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.0.20.isoform.txt 2>&1' + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 2 sample.input.pair.txt ++ cut -f 1 ++ tail -n 1 + g1=0 ++ head -n 2 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=50 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_194915_443_19430 + echo pp20220928_194915_443_19430 + docker run --name pp20220928_194915_443_19430 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.0.50.sh + awk '-F\t' -v g1=0 -v g2=50 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=0 '$2==g1{print $1}' sample.input.0.50.txt + awk '-F\t' -v g2=50 '$2==g2{print $1}' sample.input.0.50.txt + awk '-F\t' -v g1=0 -v g2=50 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{if(FNR==1){for(i=2;i<=NF;i++){if(flag[$i]==1){flag2[i]=1}}}; ORS=""; print $1; for(i=2;i<=NF;i++){if(flag2[i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.0.50.isoform.R -i 0 -j 50 -p 0.05 isoforms.count_table.0.50.txt sample.input.0.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.0.50.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.0.50.isoform.R -i 0 -j 50 -p 0.05 isoforms.count_table.0.50.txt sample.input.0.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.0.50.isoform.txt 2>&1' + for i in '`seq 1 $(cat sample.input.pair.txt|wc -l)`' ++ head -n 3 sample.input.pair.txt ++ tail -n 1 ++ cut -f 1 + g1=20 ++ head -n 3 sample.input.pair.txt ++ tail -n 1 ++ cut -f 2 + g2=50 + countfile=isoforms.count_table + '[' input_3/Trinotate.xls3.isoform.cnt = '' ']' + annfile=input_3/Trinotate.xls3.isoform.cnt + cat ++ date +%Y%m%d_%H%M%S_%3N + PPDOCNAME=pp20220928_194928_311_27722 + echo pp20220928_194928_311_27722 + docker run --name pp20220928_194928_311_27722 -v /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR:/yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -w /yoshitake/test/statistics~all-sample-combinations-DESeq2-edgeR -u 2007:600 -i --rm c2997108/centos7:1-trinity_2.8.5-kallisto_0.46.0-blast_2.9.0-trinotate-3.1.1-R_4-kegg_4 bash run-DE.20.50.sh + awk '-F\t' -v g1=20 -v g2=50 'FILENAME==ARGV[1]{if(FNR==1){print $0}else{if($2==g1||$2==g2){print $0}}}' sample.input.txt + awk '-F\t' -v g1=20 '$2==g1{print $1}' sample.input.20.50.txt + awk '-F\t' -v g2=50 '$2==g2{print $1}' sample.input.20.50.txt + awk '-F\t' -v g1=20 -v g2=50 'FILENAME==ARGV[1]{if($2==g1||$2==g2){flag[$1]=1}} FILENAME==ARGV[2]{if(FNR==1){for(i=2;i<=NF;i++){if(flag[$i]==1){flag2[i]=1}}}; ORS=""; print $1; for(i=2;i<=NF;i++){if(flag2[i]==1){print "\t"$i}}; print "\n"}' sample.input.txt isoforms.count_table + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~DESeq2 -s run-DESeq2.20.50.isoform.R -i 20 -j 50 -p 0.05 isoforms.count_table.20.50.txt sample.input.20.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-DESeq2.20.50.isoform.txt 2>&1' + echo N_SCRIPT=1 bash /yoshitake/PortablePipeline/PortablePipeline/scripts/statistics~edgeR -s run-edgeR.20.50.isoform.R -i 20 -j 50 -p 0.05 isoforms.count_table.20.50.txt sample.input.20.50.txt '\'\''input_3/Trinotate.xls3.isoform.cnt\'\''' '> log-edgeR.20.50.isoform.txt 2>&1' + post_processing + '[' 1 = 1 ']' + echo 0 + exit PID: 26049