Nothing
## ----include=FALSE------------------------------------------------------------
knitr::opts_chunk$set(eval = FALSE)
library("sevenbridges")
## -----------------------------------------------------------------------------
# if (!require("devtools", quietly = TRUE)) install.packages("devtools")
# install.packages("BiocManager")
#
# devtools::install_github(
# "sbg/sevenbridges-r",
# repos = BiocManager::repositories(),
# build_vignettes = TRUE, dependencies = TRUE
# )
## -----------------------------------------------------------------------------
# browseVignettes(package = "sevenbridges")
## -----------------------------------------------------------------------------
# a <- Auth(token = "your_token", platform = "cgc")
## -----------------------------------------------------------------------------
# a <- Auth(from = "file", profile_name = "cgc")
# # # remove old project
# # a$project(id = "tengfei/hackathon")$delete()
## -----------------------------------------------------------------------------
# sbg_set_env("https://cgc-api.sbgenomics.com/v2", "your_token")
## -----------------------------------------------------------------------------
# a <- Auth(from = "env")
## -----------------------------------------------------------------------------
# (b <- a$billing())
# # a single billing group is showing
## -----------------------------------------------------------------------------
# (p <- a$project_new("hackathon",
# billing_group_id = b$id,
# description = "This project is for CGC hackathon"
# ))
## -----------------------------------------------------------------------------
# # p$delete()
## ---- comment = "", eval = TRUE-----------------------------------------------
rbx <- Tool(
id = "runif",
label = "runif",
hints = requirements(docker(pull = "rocker/r-base"), cpu(1), mem(2000)),
baseCommand = "Rscript -e 'runif(100)'",
stdout = "output.txt",
outputs = output(id = "random", glob = "*.txt")
)
rbx$toJSON(pretty = TRUE)
## ---- eval = TRUE-------------------------------------------------------------
# provide scripts
# make a new script file
fd <- fileDef(
name = "runif.R",
content = "set.seed(1); runif(100)"
)
rbx <- Tool(
id = "runif",
label = "runif",
hints = requirements(docker(pull = "rocker/r-base"), cpu(1), mem(2000)),
requirements = requirements(fd),
baseCommand = "Rscript runif.R", # run script you created.
stdout = "output.txt",
outputs = output(id = "random", glob = "*.txt")
)
## ---- eval = TRUE-------------------------------------------------------------
fl <- system.file("docker/rnaseqGene", "Dockerfile",
package = "sevenbridges"
)
## ----comment='', eval = TRUE--------------------------------------------------
cat(readLines(fl), sep = "\n")
## ---- eval = TRUE-------------------------------------------------------------
fl <- system.file("docker/rnaseqGene/src", "performDE.R",
package = "sevenbridges"
)
## ----comment='', eval = TRUE--------------------------------------------------
cat(readLines(fl), sep = "\n")
## ---- eval = TRUE-------------------------------------------------------------
fl <- system.file("docker/rnaseqGene/report", "rnaseqGene.Rmd",
package = "sevenbridges"
)
## ----comment = "", eval = TRUE------------------------------------------------
cat(readLines(fl, n = 50), sep = "\n")
## ---- eval = TRUE-------------------------------------------------------------
rbx <- Tool(
id = "rnaseqGene",
label = "rnaseqgene",
description = "A RNA-seq Differiencial Expression Flow and Report",
hints = requirements(docker(pull = "tengfei/rnaseqgene"), cpu(1), mem(2000)),
baseCommand = "performDE.R",
inputs = list(
input(
id = "bamfiles", label = "bam files",
description = "a list of bam files",
type = "File...", ## or type = ItemArray("File")
prefix = "--bamfiles",
itemSeparator = ","
),
input(
id = "design", label = "design matrix",
type = "File",
prefix = "--design"
),
input(
id = "gtffile", label = "gene feature files",
type = "File",
prefix = "--gtffile"
),
input(
id = "format", label = "report foramt html or pdf",
type = enum("format", c("pdf", "html")),
prefix = "--format"
)
),
outputs = list(
output(
id = "report", label = "report",
description = "A reproducible report created by Rmarkdown",
glob = Expression(
engine = "#cwl-js-engine",
script = "x = $job[['inputs']][['format']]; if(x == 'undefined' || x == null){x = 'html';};'rnaseqGene.' + x"
)
),
output(
id = "heatmap", label = "heatmap",
description = "A heatmap plot to show the Euclidean distance between samples",
glob = "heatmap.pdf"
),
output(
id = "count", label = "count",
description = "Reads counts matrix",
glob = "count.csv"
),
output(
id = "de", label = "Differential expression table",
description = "Differential expression table",
glob = "de.csv"
)
)
)
## ----comment = "", eval = TRUE------------------------------------------------
rbx
rbx$toJSON(pretty = TRUE)
rbx$toJSON()
# # or write to an external file
# fl <- "~/Downloads/rnaseqGene.json"
# write(rbx$toJSON(pretty = TRUE), fl)
## -----------------------------------------------------------------------------
# # add App you just created
# (rna.app <- p$app_add("rnaseqgene", rbx))
## -----------------------------------------------------------------------------
# fl <- system.file("extdata", "sample1.fastq", package = "sevenbridges")
# (p <- a$project(id = "tengfei/quickstart"))
# # by default load .meta for the file
# p$upload(fl, overwrite = TRUE)
# # pass metadata
# p$upload(fl, overwrite = TRUE, metadata = list(library_id = "testid2", platform = "Illumina x11"))
# # rename
# p$upload(fl,
# overwrite = TRUE, name = "sample_new_name.fastq",
# metadata = list(library_id = "new_id")
# )
#
# # upload folder
# dir.ext <- system.file("extdata", package = "sevenbridges")
# p$upload(dir.ext, overwrite = TRUE)
#
# # upload file list
# fls <- list.files(dir.ext, recursive = TRUE, full.names = TRUE)
# p$upload(fls, overwrite = TRUE)
## ---- comment = "", eval = TRUE-----------------------------------------------
download.fl <- system.file("extdata/download.txt", package = "sevenbridges")
cat(readLines(download.fl), sep = "\n")
## -----------------------------------------------------------------------------
# td <- tempfile()
# dir.create(td)
# for (f in readLines(download.fl)) {
# download.file(f, file.path(td, basename(f)))
# }
# # double check
# list.files(td)
# # upload to the project you created
# p$upload(td)
## -----------------------------------------------------------------------------
# # get file id you need as inout
# (bamfiles.in <- p$file(".bam"))
# (design.in <- p$file("sample_table.csv"))
# (gtf.in <- p$file("Homo_sapiens.GRCh37.75_subset.gtf"))
## -----------------------------------------------------------------------------
# bam1 <- p$file("SRR1039516_subset.bam")
# bam2 <- p$file("SRR1039512_subset.bam")
# bamfiles.in2 <- list(bam1, bam2)
## -----------------------------------------------------------------------------
# # add a new Task
# (tsk <- p$task_add(
# name = "RNA DE report new",
# description = "RNA DE analysis report",
# app = rna.app$id,
# inputs = list(
# bamfiles = bamfiles.in,
# design = design.in,
# gtffile = gtf.in
# )
# ))
#
# # don't forget to run a draft task
# tsk$run()
## -----------------------------------------------------------------------------
# # # monitor the task
# # tsk$monitor()
## -----------------------------------------------------------------------------
# setTaskHook("completed", function() {
# tsk$download("~/Downloads")
# })
# tsk$monitor()
## -----------------------------------------------------------------------------
# tsk$download("~/Downloads")
## -----------------------------------------------------------------------------
# # batch by items
# (tsk <- p$task_add(
# name = "RNA DE report new batch 2",
# description = "RNA DE analysis report",
# app = rna.app$id,
# batch = batch(input = "bamfiles"),
# inputs = list(
# bamfiles = bamfiles.in,
# design = design.in,
# gtffile = gtf.in
# )
# ))
#
# # batch by metadata, input files has to have metadata fields specified
# (tsk <- p$task_add(
# name = "RNA DE report new batch 3",
# description = "RNA DE analysis report",
# app = rna.app$id,
# batch = batch(
# input = "fastq",
# c("metadata.sample_id", "metadata.library_id")
# ),
# inputs = list(
# bamfiles = bamfiles.in,
# design = design.in,
# gtffile = gtf.in
# )
# ))
## ----comment = "", eval = TRUE------------------------------------------------
fl <- system.file("docker/reporttool/rabix/reporttool.json",
package = "sevenbridges"
)
cat(readLines(fl), sep = "\n")
## -----------------------------------------------------------------------------
# # directly add json file
# p <- a$project(id = "tengfei/hackathon")
# (report.app <- p$app_add("report-tool", fl))
## ----comment = "", eval = TRUE------------------------------------------------
fl <- system.file("docker/reporttool/Dockerfile",
package = "sevenbridges"
)
cat(readLines(fl), sep = "\n")
## ----comment = "", eval = FALSE-----------------------------------------------
# fl <- system.file("docker/reporttool/src/report.R",
# package = "sevenbriges"
# )
# cat(readLines(fl), sep = "\n")
## ----comment = "", eval = FALSE-----------------------------------------------
# fl <- system.file("docker/reporttool/rabix/generator.R",
# package = "sevenbriges"
# )
# cat(readLines(fl), sep = "\n")
## -----------------------------------------------------------------------------
# browseVignettes("sevenbridges")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.