Lớp ExpressionSet

Phân tích Biểu hiện khác biệt với limma trong R

John Blischak

Instructor

Quản lý dữ liệu rất mong manh

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

Chỉ một dấu phẩy sai chỗ cũng đủ biến thành ác mộng gỡ lỗi:

x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[, 1:10]
# Ôi không!   *
Phân tích Biểu hiện khác biệt với limma trong R

Lập trình hướng đối tượng với các class của Bioconductor

  • class - định nghĩa cấu trúc để chứa dữ liệu phức tạp

  • object - một thể hiện cụ thể của một class

  • methods - các hàm hoạt động trên một class cụ thể

    • getters/accessors - Lấy dữ liệu lưu trong object
    • setters/ - Sửa dữ liệu lưu trong object
install.packages("BiocManager")
BiocManager::install("Biobase")
Phân tích Biểu hiện khác biệt với limma trong R

Tạo một object ExpressionSet

# Load package
library(Biobase)

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

# Xem số feature (hàng) và sample (cột) dim(eset)
Features  Samples 
   22283      344
?ExpressionSet
Phân tích Biểu hiện khác biệt với limma trong R

Truy cập dữ liệu từ một object ExpressionSet

Ma trận expression

x <- exprs(eset)

Dữ liệu feature

f <- fData(eset)

Dữ liệu phenotype

p <- pData(eset)
Phân tích Biểu hiện khác biệt với limma trong R

Lấy tập con của một object ExpressionSet

  • Lấy tập con với 3 object riêng lẻ:
x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[1:10, ]
  • Lấy tập con với một object 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
Phân tích Biểu hiện khác biệt với limma trong R

Boxplot với một 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"])

Phân tích Biểu hiện khác biệt với limma trong R

Cùng luyện tập nào!

Phân tích Biểu hiện khác biệt với limma trong R

Preparing Video For Download...