-
Notifications
You must be signed in to change notification settings - Fork 1
/
03_SummarizedExperiment.R
84 lines (64 loc) · 2.39 KB
/
03_SummarizedExperiment.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
## ----first_rse-------------------------------------------------------------------------------------------
## Lets build our first SummarizedExperiment object
library("SummarizedExperiment")
## ?SummarizedExperiment
## De los ejemplos en la ayuda oficial
## Creamos los datos para nuestro objeto de tipo SummarizedExperiment
## para 200 genes a lo largo de 6 muestras
nrows <- 200
ncols <- 6
## Números al azar de cuentas
set.seed(20210223)
counts <- matrix(runif(nrows * ncols, 1, 1e4), nrows)
## Información de nuestros genes
rowRanges <- GRanges(
rep(c("chr1", "chr2"), c(50, 150)),
IRanges(floor(runif(200, 1e5, 1e6)), width = 100),
strand = sample(c("+", "-"), 200, TRUE),
feature_id = sprintf("ID%03d", 1:200)
)
names(rowRanges) <- paste0("gene_", seq_len(length(rowRanges)))
## Información de nuestras muestras
colData <- DataFrame(
Treatment = rep(c("ChIP", "Input"), 3),
row.names = LETTERS[1:6]
)
## Juntamos ahora toda la información en un solo objeto de R
rse <- SummarizedExperiment(
assays = SimpleList(counts = counts),
rowRanges = rowRanges,
colData = colData
)
## Exploremos el objeto resultante
rse
## Número de genes y muestras
dim(rse)
## IDs de nuestros genes y muestras
dimnames(rse)
## Nombres de tablas de cuentas que tenemos (RPKM, CPM, counts, logcounts, etc)
assayNames(rse)
## El inicio de nuestra tabla de cuentas
head(assay(rse))
## Información de los genes en un objeto de Bioconductor
rowRanges(rse)
## Tabla con información de los genes
rowData(rse) # es idéntico a 'mcols(rowRanges(rse))'
## Tabla con información de las muestras
colData(rse)
## ----rse_exercise----------------------------------------------------------------------------------------
## Comando 1
rse[1:2, ]
## Comando 2
rse[, c("A", "D", "F")]
## ----isee_basic, eval = FALSE----------------------------------------------------------------------------
## ## Explora el objeto rse de forma interactiva
## library("iSEE")
## iSEE::iSEE(rse)
## ----download_sce_layer----------------------------------------------------------------------------------
## Descarguemos unos datos de spatialLIBD
sce_layer <- spatialLIBD::fetch_data("sce_layer")
sce_layer
## Revisemos el tamaño de este objeto
lobstr::obj_size(sce_layer) / 1024^2 ## Convertir a MB
## ----explore_sce_layer, eval = FALSE---------------------------------------------------------------------
## iSEE::iSEE(sce_layer)