diff bdss_client_sra_pe.Rmd @ 0:614e9553f366 draft

planemo upload for repository https://github.com/statonlab/docker-GRReport/tree/master/my_tools/rmarkdown_bdss_client commit 36de2ee9751d1ef5db0c76c217fd5ba262ca3739-dirty
author mingchen0919
date Tue, 10 Oct 2017 20:19:52 -0400
parents
children c707a4178832
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bdss_client_sra_pe.Rmd	Tue Oct 10 20:19:52 2017 -0400
@@ -0,0 +1,61 @@
+---
+title: 'Fastq-dump: download and extract paired end reads into FASTQ/FASTA file'
+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
+)
+```
+
+# Command line arguments
+
+```{r 'command line arguments'}
+str(opt)
+```
+
+# Download and extract reads
+
+```{r 'download and extract reads'}
+# create a directory to store read files
+dir.create('read_files_directory')
+# download and extract reads
+sra_accessions = strsplit(gsub(',', ' ', 'SRA_ACCESSION'), ' ')[[1]]
+sra_accessions = sra_accessions[sra_accessions != '']
+# loop through SRA accessions to download and extract reads.
+for(id in sra_accessions) {
+  # build URL from SRA accession
+  url = paste0('ftp://ftp.ncbi.nlm.nih.gov/sra/sra-instant/reads/ByRun/sra/SRR/',
+               substr(id, 1, 6), '/', id, '/', id, '.sra')
+  # download sra file with bdss
+  bdss_command = paste0('/tool_deps/_conda/bin/bdss transfer -u ', url)
+  system(bdss_command, intern = TRUE)
+  # convert .sra to .fastq/.fasta
+  if('FORMAT' == 'fasta') {
+    command = paste0('fastq-dump --fasta --split-files ', '-O read_files_directory ', id)
+  } else {
+    command = paste0('fastq-dump --split-files ', '-O read_files_directory ', id)
+  }
+  # command line stdout
+  system(command = command, intern = TRUE)
+}
+# remove all .sra file
+system('rm *.sra', intern = TRUE)
+```
+
+
+# Rename files
+
+```{r}
+old_files = paste0('./read_files_directory/', list.files('./read_files_directory'))
+new_files = gsub('_1', '_forward', old_files)
+new_files = gsub('_2', '_reverse', new_files)
+file.rename(old_files, new_files)
+```
+