Aan de slagGa gratis aan de slag

Maak je eigen nucleotidenfrequentie-plot

Tijd om de frequentie van nucleotiden per cycle van dichterbij te bekijken. De beste manier om dit te doen is met een visualisatie. Meestal zijn de eerste cycles wat willekeurig, en daarna zou de frequentie van nucleotiden moeten stabiliseren naarmate er meer cycles komen.

Deze oefening gebruikt het volledige fastq-bestand SRR1971253, met wat voorbewerking voor je gedaan:

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

Jouw taak is om met tidyverse-functies een plot te maken van de nucleotidenfrequentie per cycle!

Deze oefening maakt deel uit van de cursus

Introductie tot Bioconductor in R

Cursus bekijken

Oefeninstructies

  • Gebruik glimpse() op het object nucByCycle om de data te bekijken.
  • Zet de nucleotideletters in alphabet op lang formaat met pivot_longer() en maak een nieuwe kolom count.
  • Maak een lijnplot met cycle op de x-as en count op de y-as, met de kleur bepaald door alphabet.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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())
Code bewerken en uitvoeren