Клас ExpressionSet

Аналіз диференційної експресії з limma в R

John Blischak

Instructor

Керування даними — справа тонка

x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[1:10, ]

Одна зайва або не там поставлена кома може перетворити налагодження на кошмар:

x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[, 1:10]
# Oh no!   *
Аналіз диференційної експресії з limma в R

Об'єктно-орієнтоване програмування з класами Bioconductor

  • class — задає структуру для зберігання складних даних

  • object — конкретний екземпляр класу

  • methods — функції, що працюють із певним класом

    • getters/accessors — отримують дані, збережені в об'єкті
    • setters/ — змінюють дані, збережені в об'єкті
install.packages("BiocManager")
BiocManager::install("Biobase")
Аналіз диференційної експресії з limma в R

Створення об'єкта ExpressionSet

# Load package
library(Biobase)

# Create ExpressionSet object
eset <- ExpressionSet(assayData = x,
                      phenoData = AnnotatedDataFrame(p),
                      featureData = AnnotatedDataFrame(f))

# View the number of features (rows) and samples (columns) dim(eset)
Features  Samples 
   22283      344
?ExpressionSet
Аналіз диференційної експресії з limma в R

Доступ до даних з об'єкта ExpressionSet

Матриця експресії

x <- exprs(eset)

Дані ознак

f <- fData(eset)

Дані фенотипів

p <- pData(eset)
Аналіз диференційної експресії з limma в R

Вибірка з об'єкта ExpressionSet

  • Вибірка з 3 окремих об'єктів:
x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[1:10, ]
  • Вибірка з об'єкта ExpressionSet:
eset_sub <- eset[1000, 1:10]
nrow(exprs(eset_sub)) == nrow(fData(eset_sub))
TRUE
ncol(exprs(eset_sub)) == nrow(pData(eset_sub))
TRUE
Аналіз диференційної експресії з limma в R

Boxplot з ExpressionSet

boxplot(<y-axis> ~ <x-axis>, main = "<title>")
boxplot(<gene expression> ~ <phenotype>, main = "<feature>")

boxplot(exprs(eset)[1, ] ~ pData(eset)[, "er"], main = fData(eset)[1, "symbol"])

Аналіз диференційної експресії з limma в R

Давайте потренуємось!

Аналіз диференційної експресії з limma в R

Preparing Video For Download...