encyklopedia.run.place

Limma

Limma (ang. Linear Models for Microarray Data) – zestaw metod statystycznych oraz oprogramowanie służące do analizy danych uzyskiwanych w technikach wysokoprzepustowych, takich jak mikroarray czy RNA‑seq. Nazwa wywodzi się od angielskiego słowa limma, będącego skrótem od linear models for microarray analysis. Paket R udostępnia go jako pakiet limma.

Definicja

Limma obejmuje szereg technik opartych na modelach liniowych, które pozwalają na:

  • Normalizację i przetwarzanie surowych danych pomiarowych.
  • Estymację wariancji przy użyciu metody empirycznej Bayesa.
  • Testy statystyczne dla różnic w ekspresji genów pomiędzy grupami eksperymentalnymi.
  • Wykrywanie i korygowanie efektów technicznych (batch effects) przy pomocy funkcji removeBatchEffect.

Historia

Pierwsza wersja limmy została udostępniona w 2003 roku przez zespół pod kierownictwem Gordona Smitha z Harvard University. Od tego czasu pakiet jest regularnie rozwijany i obecnie jest integralną częścią Bioconductor – otwartego repozytorium oprogramowania bioinformatycznego.

Zastosowania

Limma znalazła szerokie zastosowanie w różnych dziedzinach:

  • Medycynie – identyfikacja biomarkerów oraz badanie reakcji organizmu na leki.
  • Biologii molekularnej – analiza zmian w ekspresji genów w odpowiedzi na czynniki stresowe.
  • Ekologii – badanie wpływu warunków środowiskowych na profil transkryptomiczny organizmów.
  • Onkologii – klasyfikacja nowotworów na podstawie ich podpisów genetycznych.

Metodologia

Podstawowym elementem limmy jest dopasowanie modelu liniowego do każdego genu oddzielnie:

fit <- lmFit(exprSet, design)
fit <- eBayes(fit)

Gdzie:

  • exprSet – macierz intensywności sygnału (geny w wierszach, próbki w kolumnach).
  • design – macierz projektu określająca grupy eksperymentalne.
  • Funkcja eBayes wprowadza empiryczną estymację wariancji, co zwiększa moc statystyczną przy małej liczbie replik.

Oprogramowanie

Pakiet limma jest dostępny w środowisku R oraz jako część platformy Bioconductor. Do najważniejszych funkcji należą:

  • lmFit – dopasowanie modelu liniowego.
  • contrasts.fit – definiowanie kontrastów pomiędzy grupami.
  • eBayes – empiryczna korekta wariancji.
  • topTable – generowanie tabeli najważniejszych genów.
  • voom – przekształcenie danych z RNA‑seq do postaci umożliwiającej użycie metod limmy.

Przykładowa analiza

Poniżej przedstawiono fragment kodu ilustrującego typowy przepływ pracy w limma:

# wczytanie danych
library(limma)
exprSet <- read.table("dane.txt", header=TRUE, row.names=1)

# projekt eksperymentalny
grupy <- factor(c("kontrola","kontrola","kartka","kartka"))
design <- model.matrix(~0+grupy)
colnames(design) <- levels(grupy)

# dopasowanie modelu i korekta Bayesa
fit <- lmFit(exprSet, design)
fit2 <- contrasts.fit(fit, makeContrasts(kartka-kontrola, levels=design))
fit2 <- eBayes(fit2)

# wyświetlenie wyników
topTable(fit2, adjust="BH", number=10)

Bibliografia

  • Smyth, G. K. (2004). Linear models and empirical Bayes methods for assessing differential expression in microarray experiments. Statistical Applications in Genetics and Molecular Biology, 3(1).
  • Ritchie, M. E. et al. (2015). limma powers differential expression analyses for RNA‑sequencing and microarray studies. Nucleic Acids Research, 43(7).
  • Bioconductor Project – strona główna (dokumentacja pakietu limma).

Limma stała się jednym z najczęściej cytowanych narzędzi w bioinformatyce, a jej metoda empirycznej estymacji wariancji wyznaczyła nowe standardy w analizie danych genetycznych.