Stwórz własny wykres częstości nukleotydów
Czas przyjrzeć się bliżej częstości nukleotydów w poszczególnych cyklach. Najlepszym sposobem jest stworzenie wizualizacji. Zazwyczaj pierwsze cykle są nieco losowe, a następnie częstości nukleotydów powinny się stabilizować.
To ćwiczenie korzysta z kompletnego pliku fastq SRR1971253, dla którego wstępne przetwarzanie zostało już wykonane:
library(ShortRead)
fqsample <- readFastq(dirPath = "data",
pattern = "SRR1971253.fastq")
# extract reads
abc <- alphabetByCycle(sread(fqsample))
# Transpose nucleotides A, C, G, T per column
nucByCycle <- t(abc[1:4,])
# Tidy dataset
nucByCycle <- nucByCycle %>%
as_tibble() %>% # convert to tibble
mutate(cycle = 1:50) # add cycle numbers
Twoim zadaniem jest stworzenie wykresu częstości nukleotydów według cyklu przy użyciu funkcji z pakietu tidyverse!
To ćwiczenie jest częścią kursu
Wprowadzenie do Bioconductor w R
Instrukcje do ćwiczenia
- Użyj funkcji
glimpse()na obiekcienucByCycle, aby przyjrzeć się danym. - Przekształć kolumny z literami nukleotydów do formatu długiego, używając
pivot_longer(), i utwórz nową kolumnęcount. - Stwórz wykres liniowy z
cyclena osi x icountna osi y, pokolorowany według zmiennejalphabet.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Glimpse nucByCycle
___
# Create a line plot of cycle vs. count
nucByCycle %>%
# Gather the nucleotide letters in alphabet and get a new count column
pivot_longer(-cycle, names_to = ___, values_to = ___) %>%
ggplot(aes(x = ___, y = ___, color = ___)) +
geom_line(size = 0.5 ) +
labs(y = "Frequency") +
theme_bw() +
theme(panel.grid.major.x = element_blank())