Fundamenty Języka R w Analizie Bioinformatycznej
Ten moduł stanowi absolutny fundament przed przejściem do zaawansowanych analiz. Głównym celem jest zapoznanie się z historią, filozofią oraz podstawową składnią języka R. Kładzie nacisk na konfigurację środowiska pracy (RStudio/Posit), zarządzanie podstawowymi obiektami w pamięci programu, zrozumienie fundamentalnych struktur danych (wektorów, macierzy, list i ramek) oraz mechanizmów sterowania przepływem. Moduł wprowadza również podstawy statystyki oraz generowanie prostych wykresów do wizualizacji zjawisk biologicznych.
Rodzina funkcji apply: Zbiór wydajnych metod zastępujących klasyczne pętle, przyspieszających kod:
| Funkcja | Opis i Zastosowanie | Typ Wyniku |
|---|---|---|
apply() |
Stosuje funkcję na wierszach (1) lub kolumnach (2) macierzy. | Wektor / Macierz |
lapply() |
Aplikuje funkcję do każdego elementu listy/wektora. | Zawsze lista (list) |
sapply() |
Działa jak lapply, ale automatycznie upraszcza wynik. | Wektor / Macierz |
Algorytmy sterujące: Instrukcje warunkowe if, else if, else oraz pętle for i while. Sterowanie pętlą odbywa się za pomocą break (przerwanie) i next (pominięcie i przejście do kolejnej iteracji).
Statystyka parametryczna i nieparametryczna:
Metody parametryczne obejmują test t (t.test()) porównujący średnie dwóch grup oraz wieloczynnikową analizę wariancji ANOVA (aov()) z testem post-hoc Tukeya.
Metody nieparametryczne (stosowane w przypadku braku rozkładu normalnego) obejmują test Wilcoxona (wilcox.test()) oraz test Kruskala-Wallisa (kruskal.test()).
R rozróżnia dane liczbowe (całkowite integer i zmiennoprzecinkowe numeric), tekstowe (character), logiczne (logical), zespolone (complex) oraz surowe bajty (raw).
Złożone struktury danych:
Macierz (matrix()) to dwuwymiarowa struktura, w której wszystkie elementy muszą mieć ten sam typ.
Lista (list()) to najbardziej elastyczna struktura, zdolna do przechowywania wektorów, znaków, macierzy i innych list w jednej zmiennej.
character, zliczanie długości przez nchar(), ewaluacja statystyczna różnic testami t.test() i aov() oraz wizualizacja Volcano plot (osi log2FoldChange vs p-value) za pomocą plot().lapply() zawsze zwraca wynik w postaci **listy**, niezależnie od wejścia. Funkcja sapply() automatycznie próbuje **uprościć** wynik do postaci wektora lub macierzy, jeśli to możliwe strukturalnie.
aov()** (zazwyczaj jako aov(wartość ~ grupa)).
next**.