CommencezCommencez gratuitement

Faites votre propre graphique de fréquence des nucléotides

Il est maintenant temps d'examiner de plus près la fréquence des nucléotides par cycle. Le meilleur moyen est de créer une visualisation. En général, les premiers cycles sont un peu aléatoires, puis la fréquence des nucléotides devrait se stabiliser au fil des cycles.

Cet exercice utilise le fichier fastq complet SRR1971253, avec un certain prétraitement déjà fait pour vous :

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

Votre tâche est de produire un graphique de fréquence des nucléotides par cycle en utilisant les fonctions de tidyverse !

Cette activité fait partie du cours

Introduction à Bioconductor en R

Voir le cours

Instructions de l’exercice

  • Utilisez glimpse() sur l'objet nucByCycle pour obtenir un aperçu des données.
  • Réorganisez les lettres de nucléotides dans alphabet avec pivot_longer() et créez une nouvelle colonne count.
  • Tracez un graphique en lignes avec cycle sur l'axe des x et count sur l'axe des y, en colorant selon alphabet.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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())
Modifier et exécuter le code