About this page
04.38 pm 20.11.2024 IST
For those new here, I'm a scientist. An RNA biologist by training. A bench scientist who loves tinkering with biology as much as tinkering with computers. Playing with code and exploring new pipelines is one of my favourite things to do when the wet work moves slow. It's an unusual hobby for a biologist who mostly works on the bench, but I love the feeling of power and satisfaction that being a 'computer person' in a molecular biology lab brings. Although it all started with curiosity, it ended up playing a big part in who I am as a scientist. Everything is not about getting work done though. It is also about satisfying my curiosity and keeping me engaged. I need to be always doing something new for my mental well being (I'm the kind of person who will spend a week automating something which could be manually done in a day).
Things I love just because:
This blog is a record of my explorations, with the hope that someone out there finds it useful (or interesting). What follows is filler text.
BiocManager::install("Logolas")
library(Logolas)
sequence <- c("CTATTGT", "CTCTTAT", "CTATTAA", "CTATTTA", "CTATTAT", "CTTGAAT",
"CTTAGAT", "CTATTAA", "CTATTTA", "CTATTAT", "CTTTTAT", "CTATAGT",
"CTATTTT", "CTTATAT", "CTATATT", "CTCATTT", "CTTATTT", "CAATAGT",
"CATTTGA", "CTCTTAT", "CTATTAT", "CTTTTAT", "CTATAAT", "CTTAGGT",
"CTATTGT", "CTCATGT", "CTATAGT", "CTCGTTA", "CTAGAAT", "CAATGGT")
# Plot regular logo
logomaker(sequence, type = "Logo")
# Plot ED logo
logomaker(sequence, type = "EDLogo")
# Get the actual PWMs
logomaker(sequence, type = "EDLogo", return_heights = TRUE)
# Custom colors
logomaker(sequence, color_type = "per_row",
colors = c("#7FC97F", "#BEAED4", "#FDC086", "#386CB0"),
type = "EDLogo")
# User supplied background values
# default bg is NULL where all letters are equal probability
bg <- c(0.05, 0.90, 0.03, 0.05)
names(bg) <- c("A", "C", "G", "T")
logomaker(sequence, bg=bg, type = "EDLogo")
# Adaptive scaling depending on number of alignments (dash - https://github.com/kkdey/dashr)
logomaker(sequence, use_dash = FALSE, type = "Logo",
logo_control = list(pop_name = "use_dash = FALSE"))
logomaker(sequence, type = "Logo", logo_control = list(pop_name = "use_dash = TRUE"))
# Get consensus logo - lower case=disfavoured/lowest freq
GetConsensusSeq(sequence)