Obsługa sekwencji

Wprowadzenie do Bioconductor w R

James Chapman

Curriculum Manager, DataCamp

Pojedyncza sekwencja vs. zbiór

 

  • XString do przechowywania pojedynczej sekwencji
    • BString – dowolny ciąg znaków
    • DNAString – DNA
    • RNAString – RNA
    • AAString – aminokwasy

 

  • XStringSet dla wielu sekwencji
    • BStringSet
    • DNAStringSet
    • RNAStringSet
    • AAStringSet
Wprowadzenie do Bioconductor w R

Tworzenie StringSet i scalanie

# Wczytanie sekwencji jako zbioru
zikaVirus <- readDNAStringSet("data/zika.fa")

length(zikaVirus) # zbiór zawiera tylko jedną sekwencję width(zikaVirus) # o długości 10794 zasad
1
10794
# Scalenie sekwencji
zikaVirus_seq <- unlist(zikaVirus)


length(zikaVirus_seq)
width(zikaVirus_seq)
10794

Error in (function (classes, fdef, mtable) : unable to find an inherited method for function 'width' for signature '"DNAString"'
Wprowadzenie do Bioconductor w R

Od pojedynczej sekwencji do zbioru

# Tworzenie nowego zbioru z pojedynczej sekwencji
zikaSet <- DNAStringSet(zikaVirus_seq, start = c(1, 101, 201), end = c(100, 200, 300))
zikaSet
DNAStringSet object of length 3:
    width seq
[1]   100 AGTTGTTGATCTGTGTGAGTCAGACTGCGACAGTTCGAGTCTGAAG...AACAACAGTATCAACAGGTTTAATTTGGATTTGGAAACGAGAGTTT
[2]   100 CTGGTCATGAAAAACCCCAAAGAAGAAATCCGGAGGATCCGGATTG...CTAAAACGCGGAGTAGCCCGTGTAAACCCCTTGGGAGGTTTGAAGA
[3]   100 GGTTGCCAGCCGGACTTCTGCTGGGTCATGGACCCATCAGAATGGT...TACTAGCCTTTTTGAGATTTACAGCAATCAAGCCATCACTGGGCCT
length(zikaSet) 
width(zikaSet)
3
100 100 100
Wprowadzenie do Bioconductor w R

Sekwencja komplementarna

ATGATCTCGTAA

a_seq <- DNAString("ATGATCTCGTAA")
a_seq
12-letter DNAString object
seq: ATGATCTCGTAA
complement(a_seq)
12-letter DNAString object
seq: TACTAGAGCATT
Wprowadzenie do Bioconductor w R

Odwrócenie kolejności sekwencji (rev)

zikaShortSet
DNAStringSet instance of length 2
width seq                          names      
[1]    18 AGTTGTTGATCTGTGTGA        seq1
[2]    18 CTGGTCATGAAAAACCCC        seq2
rev(zikaShortSet)
 A DNAStringSet instance of length 2
width seq                          names      
[1]    18 CTGGTCATGAAAAACCCC        seq2       
[2]    18 AGTTGTTGATCTGTGTGA        seq1
Wprowadzenie do Bioconductor w R

Odwrócenie sekwencji (reverse)

zikaShortSet
 A DNAStringSet instance of length 2
width seq                          names      
[1]    18 AGTTGTTGATCTGTGTGA        seq1
[2]    18 CTGGTCATGAAAAACCCC        seq2
reverse(zikaShortSet)
 A DNAStringSet instance of length 2
width seq                          names    
[1]    18 AGTGTGTCTAGTTGTTGA        seq1
[2]    18 CCCCAAAAAGTACTGGTC        seq2
Wprowadzenie do Bioconductor w R

Odwrotne dopełnienie

# Oryginalna sekwencja rna_seq
8-letter RNAString object
seq: AGUUGUUG
reverseComplement(rna_seq)
8-letter RNAString object
seq: CAACAACU
# Użycie dwóch funkcji jednocześnie
reverse(complement(rna_seq))
8-letter RNAString object
seq: CAACAACU
Wprowadzenie do Bioconductor w R

unlist length width complement rev reverse reverseComplement

Wprowadzenie do Bioconductor w R

Przećwiczmy obsługę sekwencji!

Wprowadzenie do Bioconductor w R

Preparing Video For Download...