Třída ExpressionSet

Analýza diferenciální exprese pomocí limma v R

John Blischak

Instructor

Správa dat je náchylná k chybám

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

Jedna špatně umístěná čárka může způsobit noční můru při ladění:

x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[, 1:10]
# Oh no!   *
Analýza diferenciální exprese pomocí limma v R

Objektově orientované programování s třídami Bioconductoru

  • třída – definuje strukturu pro ukládání složitých dat

  • objekt – konkrétní instance třídy

  • metody – funkce pracující s danou třídou

    • gettery/přístupové metody – načtení dat uložených v objektu
    • settery/ – úprava dat uložených v objektu
install.packages("BiocManager")
BiocManager::install("Biobase")
Analýza diferenciální exprese pomocí limma v R

Vytvoření objektu 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
Analýza diferenciální exprese pomocí limma v R

Přístup k datům objektu ExpressionSet

Expresní matice

x <- exprs(eset)

Data příznaků

f <- fData(eset)

Fenotypová data

p <- pData(eset)
Analýza diferenciální exprese pomocí limma v R

Vytvoření podmnožiny objektu ExpressionSet

  • Podmnožina pomocí 3 samostatných objektů:
x_sub <- x[1000, 1:10]
f_sub <- f[1000, ]
p_sub <- p[1:10, ]
  • Podmnožina pomocí objektu 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
Analýza diferenciální exprese pomocí limma v R

Boxplot s objektem 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"])

Analýza diferenciální exprese pomocí limma v R

Pojďme si procvičit!

Analýza diferenciální exprese pomocí limma v R

Preparing Video For Download...