Mercurial > repos > devteam > cummerbund
comparison cummeRbund.R @ 6:c3b54a4b7741 draft default tip
"planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/cummerbund commit f929353ffb0623f2218d7dec459c7da62f3b0d24"
author | devteam |
---|---|
date | Mon, 06 Jul 2020 20:25:47 -0400 |
parents | 78fcfc04fcfe |
children |
comparison
equal
deleted
inserted
replaced
5:78fcfc04fcfe | 6:c3b54a4b7741 |
---|---|
1 ## Feature Selection ## | 1 ## Feature Selection ## |
2 options(echo=TRUE) | 2 options(echo = TRUE) |
3 get_features <- function(myGenes, f="gene") { | 3 get_features <- function(my_genes, f = "gene") { |
4 if (f == "isoforms") | 4 if (f == "isoforms") |
5 return(isoforms(myGenes)) | 5 return(isoforms(my_genes)) |
6 else if (f == "tss") | 6 else if (f == "tss") |
7 return(TSS(myGenes)) | 7 return(TSS(my_genes)) |
8 else if (f == "cds") | 8 else if (f == "cds") |
9 return(CDS(myGenes)) | 9 return(CDS(my_genes)) |
10 else | 10 else |
11 return(myGenes) | 11 return(my_genes) |
12 } | 12 } |
13 | 13 |
14 ## Main Function ## | 14 ## Main Function ## |
15 | 15 |
16 library(argparse) | 16 library(argparse) |
17 | 17 |
18 parser <- ArgumentParser(description='Create a plot with cummeRbund') | 18 parser <- ArgumentParser(description = "Create a plot with cummeRbund") |
19 | 19 |
20 parser$add_argument('--type', dest='plotType', default='Density', required=TRUE) | 20 parser$add_argument("--type", dest = "plotType", default = "Density", required = TRUE) |
21 parser$add_argument('--height', dest='height', type='integer', default=960, required=TRUE) | 21 parser$add_argument("--height", dest = "height", type = "integer", default = 960, required = TRUE) |
22 parser$add_argument('--width', dest='width', type='integer', default=1280, required=TRUE) | 22 parser$add_argument("--width", dest = "width", type = "integer", default = 1280, required = TRUE) |
23 parser$add_argument('--outfile', dest='filename', default="plot-unknown-0.png", required=TRUE) | 23 parser$add_argument("--outfile", dest = "filename", default = "plot-unknown-0.png", required = TRUE) |
24 parser$add_argument('--input', dest='input_database', default="cuffData.db", required=TRUE) | 24 parser$add_argument("--input", dest = "input_database", default = "cuffData.db", required = TRUE) |
25 parser$add_argument('--smooth', dest='smooth', action="store_true", default=FALSE) | 25 parser$add_argument("--smooth", dest = "smooth", action = "store_true", default = FALSE) |
26 parser$add_argument('--gene_selector', dest='gene_selector', action="store_true", default=FALSE) | 26 parser$add_argument("--gene_selector", dest = "gene_selector", action = "store_true", default = FALSE) |
27 parser$add_argument('--replicates', dest='replicates', action="store_true", default=FALSE) | 27 parser$add_argument("--replicates", dest = "replicates", action = "store_true", default = FALSE) |
28 parser$add_argument('--labcol', dest='labcol', action="store_true", default=FALSE) | 28 parser$add_argument("--labcol", dest = "labcol", action = "store_true", default = FALSE) |
29 parser$add_argument('--labrow', dest='labrow', action="store_true", default=FALSE) | 29 parser$add_argument("--labrow", dest = "labrow", action = "store_true", default = FALSE) |
30 parser$add_argument('--border', dest='border', action="store_true", default=FALSE) | 30 parser$add_argument("--border", dest = "border", action = "store_true", default = FALSE) |
31 parser$add_argument('--summary', dest='summary', action="store_true", default=FALSE) | 31 parser$add_argument("--summary", dest = "summary", action = "store_true", default = FALSE) |
32 parser$add_argument('--count', dest='count', action="store_true", default=FALSE) | 32 parser$add_argument("--count", dest = "count", action = "store_true", default = FALSE) |
33 parser$add_argument('--error_bars', dest='error_bars', action="store_true", default=FALSE) | 33 parser$add_argument("--error_bars", dest = "error_bars", action = "store_true", default = FALSE) |
34 parser$add_argument('--log10', dest='log10', action="store_true", default=FALSE) | 34 parser$add_argument("--log10", dest = "log10", action = "store_true", default = FALSE) |
35 parser$add_argument('--features', dest='features', action="store", default="genes") | 35 parser$add_argument("--features", dest = "features", action = "store", default = "genes") |
36 parser$add_argument('--clustering', dest='clustering', action="store", default="both") | 36 parser$add_argument("--clustering", dest = "clustering", action = "store", default = "both") |
37 parser$add_argument('--iter_max', dest='iter_max', action="store") | 37 parser$add_argument("--iter_max", dest = "iter_max", action = "store") |
38 parser$add_argument('--genes', dest='genes', action="append") | 38 parser$add_argument("--genes", dest = "genes", action = "append") |
39 parser$add_argument('--k', dest='k', action="store") | 39 parser$add_argument("--k", dest = "k", action = "store") |
40 parser$add_argument('--x', dest='x', action="store") | 40 parser$add_argument("--x", dest = "x", action = "store") |
41 parser$add_argument('--y', dest='y', action="store") | 41 parser$add_argument("--y", dest = "y", action = "store") |
42 | 42 |
43 args <- parser$parse_args() | 43 args <- parser$parse_args() |
44 | 44 |
45 ## Load cummeRbund library | 45 ## Load cummeRbund library |
46 library("cummeRbund") | 46 library("cummeRbund") |
56 samples(cuff) | 56 samples(cuff) |
57 print("REPLICATES:") | 57 print("REPLICATES:") |
58 replicates(cuff) | 58 replicates(cuff) |
59 print("FEATURES:") | 59 print("FEATURES:") |
60 print(annotation(genes(cuff))) | 60 print(annotation(genes(cuff))) |
61 cat(annotation(genes(cuff))[[1]],sep=",") | 61 cat(annotation(genes(cuff))[[1]], sep = ",") |
62 sink() | 62 sink() |
63 | 63 |
64 png(filename = args$filename, width = args$width, height = args$height, type=c('cairo-png')) | 64 png(filename = args$filename, width = args$width, height = args$height) |
65 tryCatch({ | 65 tryCatch({ |
66 if (args$plotType == 'density') { | 66 if (args$plotType == "density") { |
67 csDensity(genes(cuff), replicates=args$replicates, logMode=args$log10) | 67 csDensity(genes(cuff), replicates = args$replicates, logMode = args$log10) |
68 } else if (args$plotType == "boxplot") { | |
69 csBoxplot(genes(cuff), replicates = args$replicates, logMode = args$log10) | |
70 } else if (args$plotType == "mds") { | |
71 MDSplot(genes(cuff), replicates = args$replicates) | |
72 } else if (args$plotType == "pca") { | |
73 PCAplot(genes(cuff), "PC1", "PC2", replicates = args$replicates) | |
74 } else if (args$plotType == "dendrogram") { | |
75 csDendro(genes(cuff), replicates = args$replicates) | |
76 } else if (args$plotType == "scatter") { | |
77 if (args$gene_selector) { | |
78 my_genes <- get_features(getGenes(cuff, args$genes), args$features) | |
79 } else { | |
80 my_genes <- genes(cuff) | |
81 } | |
82 csScatter(my_genes, args$x, args$y, smooth = args$smooth, logMode = args$log10) | |
83 } else if (args$plotType == "volcano") { | |
84 if (args$gene_selector) { | |
85 my_genes <- get_features(getGenes(cuff, args$genes), args$features) | |
86 } else { | |
87 my_genes <- genes(cuff) | |
88 } | |
89 csVolcano(my_genes, args$x, args$y) | |
90 } else if (args$plotType == "heatmap") { | |
91 if (args$gene_selector) { | |
92 my_genes <- getGenes(cuff, args$genes) | |
93 } else { | |
94 my_genes <- getGenes(cuff, annotation(genes(cuff))[[1]]) | |
95 } | |
96 csHeatmap(get_features(my_genes, args$features), clustering = args$clustering, labCol = args$labcol, labRow = args$labrow, border = args$border, logMode = args$log10) | |
97 } else if (args$plotType == "cluster") { | |
98 my_genes <- getGenes(cuff, args$genes) | |
99 csCluster(get_features(my_genes, args$features), k = args$k) | |
100 } else if (args$plotType == "dispersion") { | |
101 dispersionPlot(genes(cuff)) | |
102 } else if (args$plotType == "fpkmSCV") { | |
103 fpkmSCVPlot(genes(cuff)) | |
104 } else if (args$plotType == "scatterMatrix") { | |
105 csScatterMatrix(genes(cuff)) | |
106 } else if (args$plotType == "expressionplot") { | |
107 my_genes <- getGenes(cuff, args$genes) | |
108 expressionPlot(get_features(my_genes, args$features), drawSummary = args$summary, showErrorbars = args$error_bars, replicates = args$replicates) | |
109 } else if (args$plotType == "expressionbarplot") { | |
110 my_gene_id <- args$genes | |
111 my_genes <- getGenes(cuff, my_gene_id) | |
112 expressionBarplot(get_features(my_genes, args$features), showErrorbars = args$error_bars, replicates = args$replicates) | |
113 } else if (args$plotType == "mds") { | |
114 MDSplot(genes(cuff), replicates = args$replicates) | |
115 } else if (args$plotType == "pca") { | |
116 PCAplot(genes(cuff), "PC1", "PC2", replicates = args$replicates) | |
117 } else if (args$plotType == "maplot") { | |
118 MAplot(genes(cuff), args$x, args$y, useCount = args$count) | |
119 } else if (args$plotType == "genetrack") { | |
120 my_gene <- getGene(cuff, args$genes) | |
121 plotTracks(makeGeneRegionTrack(my_gene)) | |
68 } | 122 } |
69 else if (args$plotType == 'boxplot') { | 123 }, error = function(e) { |
70 csBoxplot(genes(cuff), replicates=args$replicates, logMode=args$log10) | 124 write(paste("Failed:", e, sep = " "), stderr()) |
71 } | |
72 else if (args$plotType == 'mds') { | |
73 MDSplot(genes(cuff), replicates=args$replicates) | |
74 } | |
75 else if (args$plotType == 'pca') { | |
76 PCAplot(genes(cuff), "PC1", "PC2", replicates=args$replicates) | |
77 } | |
78 else if (args$plotType == 'dendrogram') { | |
79 csDendro(genes(cuff), replicates=args$replicates) | |
80 } | |
81 else if (args$plotType == 'scatter') { | |
82 if (args$gene_selector) { | |
83 myGenes <- getGenes(cuff, args$genes) | |
84 csScatter(get_features(myGenes, args$features), args$x, args$y, smooth=args$smooth, logMode=args$log10) | |
85 } | |
86 else { | |
87 csScatter(genes(cuff), args$x, args$y, smooth=args$smooth, logMode=args$log10) | |
88 } | |
89 } | |
90 else if (args$plotType == 'volcano') { | |
91 if (args$gene_selector) { | |
92 myGenes <- get_features(getGenes(cuff, args$genes), args$features) | |
93 } | |
94 else { | |
95 myGenes <- genes(cuff) | |
96 } | |
97 csVolcano(myGenes, args$x, args$y) | |
98 } | |
99 else if (args$plotType == 'heatmap') { | |
100 if (args$gene_selector) { | |
101 myGenes <- getGenes(cuff, args$genes) | |
102 } | |
103 else { | |
104 myGenes <- getGenes(cuff,annotation(genes(cuff))[[1]]) | |
105 } | |
106 csHeatmap(get_features(myGenes, args$features), clustering=args$clustering, labCol=args$labcol, labRow=args$labrow, border=args$border, logMode=args$log10) | |
107 } | |
108 else if (args$plotType == 'cluster') { | |
109 myGenes <- getGenes(cuff, args$genes) | |
110 csCluster(get_features(myGenes, args$features), k=args$k) | |
111 } | |
112 else if (args$plotType == 'dispersion') { | |
113 dispersionPlot(genes(cuff)) | |
114 } | |
115 else if (args$plotType == 'fpkmSCV') { | |
116 fpkmSCVPlot(genes(cuff)) | |
117 } | |
118 else if (args$plotType == 'scatterMatrix') { | |
119 csScatterMatrix(genes(cuff)) | |
120 } | |
121 else if (args$plotType == 'expressionplot') { | |
122 myGenes <- getGenes(cuff, args$genes) | |
123 expressionPlot(get_features(myGenes, args$features), drawSummary=args$summary, showErrorbars=args$error_bars, replicates=args$replicates) | |
124 } | |
125 else if (args$plotType == 'expressionbarplot') { | |
126 myGeneId <- args$genes | |
127 myGenes <- getGenes(cuff, myGeneId) | |
128 expressionBarplot(get_features(myGenes, args$features), showErrorbars=args$error_bars, replicates=args$replicates) | |
129 } | |
130 else if (args$plotType == 'mds') { | |
131 MDSplot(genes(cuff),replicates=args$replicates) | |
132 } | |
133 else if (args$plotType == 'pca') { | |
134 PCAplot(genes(cuff),"PC1","PC2", replicates=args$replicates) | |
135 } | |
136 else if (args$plotType == 'maplot') { | |
137 MAplot(genes(cuff), args$x, args$y, useCount=args$count) | |
138 } | |
139 else if (args$plotType == 'genetrack') { | |
140 myGene <- getGene(cuff, args$genes) | |
141 plotTracks(makeGeneRegionTrack(myGene)) | |
142 } | |
143 },error = function(e) { | |
144 write(paste("Failed:", e, sep=" "), stderr()) | |
145 q("no", 1, TRUE) | 125 q("no", 1, TRUE) |
146 }) | 126 }) |
147 devname = dev.off() | 127 devname <- dev.off() |
128 print("cummeRbund finished") |