annotate scran-normalize.R @ 3:cc768b0f41cf draft default tip

planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
author artbio
date Thu, 07 Nov 2024 22:02:01 +0000
parents 6864acb21714
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
1 options(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
2 show.error.messages = FALSE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
3 error = function() {
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
4 cat(geterrmessage(), file = stderr())
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
5 q("no", 1, FALSE)
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
6 }
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
7 )
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
8 loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
9 warnings()
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
10
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
11 library(optparse)
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
12 library(scran)
2
6864acb21714 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit a14fb3d106b647c4f1dea2c8d3ac7c1e8848b21c
artbio
parents: 1
diff changeset
13 library(dynamicTreeCut)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
14
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
15 # Arguments
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
16 option_list <- list(
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
17 make_option(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
18 c("-d", "--data"),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
19 default = NA,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
20 type = "character",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
21 help = "Input file that contains count values to transform"
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
22 ),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
23 make_option(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
24 "--cluster",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
25 default = FALSE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
26 action = "store_true",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
27 type = "logical",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
28 help = "Whether to calculate the size factor per cluster or on all cell"
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
29 ),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
30 make_option(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
31 c("-m", "--method"),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
32 default = "hclust",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
33 type = "character",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
34 help = "The clustering method to use for grouping cells into cluster : hclust or igraph [default : '%default' ]"
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
35 ),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
36 make_option(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
37 "--size",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
38 default = 100,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
39 type = "integer",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
40 help = "Minimal number of cells in each cluster : hclust or igraph [default : '%default' ]"
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
41 ),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
42 make_option(
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
43 c("-o", "--out"),
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
44 default = "res.tab",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
45 type = "character",
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
46 help = "Output name [default : '%default' ]"
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
47 )
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
48 )
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
49
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
50 opt <- parse_args(OptionParser(option_list = option_list),
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
51 args = commandArgs(trailingOnly = TRUE)
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
52 )
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
53
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
54
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
55 data <- read.table(
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
56 opt$data,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
57 check.names = FALSE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
58 header = TRUE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
59 row.names = 1,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
60 sep = "\t"
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
61 )
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
62
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
63 ## Import data as a SingleCellExperiment object
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
64 sce <- SingleCellExperiment(list(counts = as.matrix(data)))
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
65
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
66 if (opt$cluster) {
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
67 clusters <- quickCluster(sce, min.size = opt$size, method = opt$method)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
68
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
69 ## Compute sum factors
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
70 sce <- computeSumFactors(sce, cluster = clusters)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
71 } else {
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
72 ## Compute sum factors
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
73 sce <- computeSumFactors(sce)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
74 }
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
75
2
6864acb21714 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit a14fb3d106b647c4f1dea2c8d3ac7c1e8848b21c
artbio
parents: 1
diff changeset
76 sce <- logNormCounts(sce)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
77
1
fb2f1b8b0013 planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit e0357f07fdabee1ec6614aca6f7b51095111e0d5
artbio
parents: 0
diff changeset
78 logcounts <- data.frame(genes = rownames(sce), round(logcounts(sce), digits = 5), check.names = FALSE)
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
79
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
80
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
81 write.table(
3
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
82 logcounts,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
83 opt$out,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
84 col.names = TRUE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
85 row.names = FALSE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
86 quote = FALSE,
cc768b0f41cf planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/main/tools/gsc_scran_normalize commit 9ab82433f375b37be5c9acb22e5deb798081dc3b
artbio
parents: 2
diff changeset
87 sep = "\t"
0
252eded61848 "planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/gsc_scran_normalize commit ddcf915dd9b690d7f3876e08b939adde36cbb8dd"
artbio
parents:
diff changeset
88 )