Erstelle deinen eigenen Plot zur Nukleotidhäufigkeit
Jetzt ist es an der Zeit, die Häufigkeit der Nukleotide pro Zyklus genauer anzuschauen. Am besten geht das mit einer Visualisierung. Üblicherweise sind die ersten Zyklen etwas zufällig, und anschließend sollte sich die Nukleotidhäufigkeit mit den folgenden Zyklen stabilisieren.
In dieser Übung wird die komplette fastq-Datei SRR1971253 verwendet, für die bereits etwas Vorverarbeitung erledigt wurde:
library(ShortRead)
fqsample <- readFastq(dirPath = "data",
pattern = "SRR1971253.fastq")
# Reads extrahieren
abc <- alphabetByCycle(sread(fqsample))
# Nukleotide A, C, G, T spaltenweise transponieren
nucByCycle <- t(abc[1:4,])
# Datensatz aufräumen
nucByCycle <- nucByCycle %>%
as_tibble() %>% # in tibble umwandeln
mutate(cycle = 1:50) # Zyklusnummern hinzufügen
Deine Aufgabe ist es, mit tidyverse-Funktionen einen Plot "Nucleotide Frequency by Cycle" zu erstellen!
Diese Übung ist Teil des Kurses
Einführung in Bioconductor in R
Anleitung zur Übung
- Wende
glimpse()auf das ObjektnucByCyclean, um einen Überblick über die Daten zu bekommen. - Pivotiere die Nukleotid-Buchstaben in
alphabetmitpivot_longer()und erzeuge eine neue Spaltecount. - Erstelle einen Liniendiagramm-Plot mit
cycleauf der x-Achse undcountauf der y-Achse, eingefärbt nachalphabet.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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())