# HG changeset patch
# User mingchen0919
# Date 1514393746 18000
# Node ID a0f0effea707ad5ff8d0162ccdd526f580696ae7
# Parent 153d35c9b7937ace16969c8a93a55e37be710654
fix wrong input type error
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_flagstat.Rmd
--- a/rmarkdown_flagstat.Rmd Tue Dec 26 16:01:54 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
----
-title: 'samtools flagstat'
-output:
- html_document:
- number_sections: true
- toc: true
- theme: cosmo
- highlight: tango
----
-
-```{r setup, include=FALSE, warning=FALSE, message=FALSE}
-knitr::opts_chunk$set(
- echo = ECHO
-)
-```
-
-
-# Code for computational analysis
-
-```{r 'run flagstat'}
-command = paste0('samtools flagstat ', opt$input_bam, ' > report.txt')
-system(command)
-```
-
-
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_flagstat.xml
--- a/rmarkdown_flagstat.xml Tue Dec 26 16:01:54 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-
-
- pandoc
- r-getopt
- r-rmarkdown
- r-htmltools
- r-dplyr
- samtools
-
- Descriptive stats for BAM dataset
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_flagstat_render.R
--- a/rmarkdown_flagstat_render.R Tue Dec 26 16:01:54 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-library(getopt)
-library(rmarkdown)
-library(htmltools)
-library(dplyr)
-
-##============ Sink warnings and errors to a file ==============
-## use the sink() function to wrap all code within it.
-##==============================================================
-zz = file('warnings_and_errors.txt')
-sink(zz)
-sink(zz, type = 'message')
- ##---------below is the code for rendering .Rmd templates-----
-
- ##=============STEP 1: handle command line arguments==========
- ##
- ##============================================================
- # column 1: the long flag name
- # column 2: the short flag alias. A SINGLE character string
- # column 3: argument mask
- # 0: no argument
- # 1: argument required
- # 2: argument is optional
- # column 4: date type to which the flag's argument shall be cast.
- # possible values: logical, integer, double, complex, character.
- #-------------------------------------------------------------
- #++++++++++++++++++++ Best practice ++++++++++++++++++++++++++
- # 1. short flag alias should match the flag in the command section in the XML file.
- # 2. long flag name can be any legal R variable names
- # 3. two names in args_list can have common string but one name should not be a part of another name.
- # for example, one name is "ECHO", if another name is "ECHO_XXX", it will cause problems.
- #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- args_list=list()
- ##------- 1. input data ---------------------
- args_list$ECHO = c('echo', 'e', '1', 'character')
- ##--------2. output report and outputs --------------
- args_list$REPORT_HTML = c('report_html', 'r', '1', 'character')
- args_list$REPORT_DIR = c('report_dir', 'd', '1', 'character')
- args_list$SINK_MESSAGE = c('sink_message', 's', '1', 'character')
- ##--------3. .Rmd templates in the tool directory ----------
- args_list$TOOL_TEMPLATE_RMD = c('tool_template_rmd', 't', '1', 'character')
- ##-----------------------------------------------------------
- opt = getopt(t(as.data.frame(args_list)))
-
-
-
- ##=======STEP 2: create report directory (optional)==========
- ##
- ##===========================================================
- dir.create(opt$report_dir)
-
- ##=STEP 3: replace placeholders in .Rmd with argument values=
- ##
- ##===========================================================
- #++ need to replace placeholders with args values one by one+
- readLines(opt$tool_template_rmd) %>%
- (function(x) {
- gsub('ECHO', opt$echo, x)
- }) %>%
- (function(x) {
- gsub('REPORT_DIR', opt$output_dir, x)
- }) %>%
- (function(x) {
- fileConn = file('tool_template.Rmd')
- writeLines(x, con=fileConn)
- close(fileConn)
- })
-
-
- ##=============STEP 4: render .Rmd templates=================
- ##
- ##===========================================================
- render('tool_template.Rmd', output_file = opt$report_html)
-
-
- ##--------end of code rendering .Rmd templates----------------
-sink()
-##=========== End of sinking output=============================
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_samtools_flagstat.Rmd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rmarkdown_samtools_flagstat.Rmd Wed Dec 27 11:55:46 2017 -0500
@@ -0,0 +1,28 @@
+---
+title: 'HTML report title'
+output:
+ html_document:
+ number_sections: true
+ toc: true
+ theme: cosmo
+ highlight: tango
+---
+
+```{r setup, include=FALSE, warning=FALSE, message=FALSE}
+knitr::opts_chunk$set(
+ echo = ECHO,
+ error = TRUE
+)
+```
+
+
+# Code for computational analysis
+
+```{r 'step 1'}
+command = paste0('samtools flagstat ', opt$input_bam, ' > report.csv')
+system(command)
+read.csv('report.csv')
+```
+
+
+
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_samtools_flagstat.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rmarkdown_samtools_flagstat.xml Wed Dec 27 11:55:46 2017 -0500
@@ -0,0 +1,54 @@
+
+
+ pandoc
+ r-getopt
+ r-rmarkdown
+ r-htmltools
+ r-dplyr
+ samtools
+
+ simple stats on BAM file
+
+
+
+
+
+
+
+
+
+
+
+
+ samtools flagstat in.sam|in.bam|in.cram
+
+Does a full pass through the input file to calculate and print statistics to stdout]]>
+
+
+
+
+
diff -r 153d35c9b793 -r a0f0effea707 rmarkdown_samtools_flagstat_render.R
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rmarkdown_samtools_flagstat_render.R Wed Dec 27 11:55:46 2017 -0500
@@ -0,0 +1,78 @@
+library(getopt)
+library(rmarkdown)
+library(htmltools)
+library(dplyr)
+
+##============ Sink warnings and errors to a file ==============
+## use the sink() function to wrap all code within it.
+##==============================================================
+zz = file('warnings_and_errors.txt')
+sink(zz)
+sink(zz, type = 'message')
+ ##---------below is the code for rendering .Rmd templates-----
+
+ ##=============STEP 1: handle command line arguments==========
+ ##
+ ##============================================================
+ # column 1: the long flag name
+ # column 2: the short flag alias. A SINGLE character string
+ # column 3: argument mask
+ # 0: no argument
+ # 1: argument required
+ # 2: argument is optional
+ # column 4: date type to which the flag's argument shall be cast.
+ # possible values: logical, integer, double, complex, character.
+ #-------------------------------------------------------------
+ #++++++++++++++++++++ Best practice ++++++++++++++++++++++++++
+ # 1. short flag alias should match the flag in the command section in the XML file.
+ # 2. long flag name can be any legal R variable names
+ # 3. two names in args_list can have common string but one name should not be a part of another name.
+ # for example, one name is "ECHO", if another name is "ECHO_XXX", it will cause problems.
+ #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ args_list=list()
+ ##------- 1. input data ---------------------
+ args_list$ECHO = c('echo', 'e', '1', 'character')
+ args_list$INPUT_BAM = c('input_bam', 'b', '1', 'character')
+ ##--------2. output report and outputs --------------
+ args_list$REPORT_HTML = c('report_html', 'r', '1', 'character')
+ args_list$REPORT_DIR = c('report_dir', 'd', '1', 'character')
+ args_list$SINK_MESSAGE = c('sink_message', 's', '1', 'character')
+ ##--------3. .Rmd templates in the tool directory ----------
+ args_list$TOOL_TEMPLATE_RMD = c('tool_template_rmd', 't', '1', 'character')
+ ##-----------------------------------------------------------
+ opt = getopt(t(as.data.frame(args_list)))
+
+
+
+ ##=======STEP 2: create report directory (optional)==========
+ ##
+ ##===========================================================
+ dir.create(opt$report_dir)
+
+ ##=STEP 3: replace placeholders in .Rmd with argument values=
+ ##
+ ##===========================================================
+ #++ need to replace placeholders with args values one by one+
+ readLines(opt$tool_template_rmd) %>%
+ (function(x) {
+ gsub('ECHO', opt$echo, x)
+ }) %>%
+ (function(x) {
+ gsub('REPORT_DIR', opt$output_dir, x)
+ }) %>%
+ (function(x) {
+ fileConn = file('tool_template.Rmd')
+ writeLines(x, con=fileConn)
+ close(fileConn)
+ })
+
+
+ ##=============STEP 4: render .Rmd templates=================
+ ##
+ ##===========================================================
+ render('tool_template.Rmd', output_file = opt$report_html)
+
+
+ ##--------end of code rendering .Rmd templates----------------
+sink()
+##=========== End of sinking output=============================