- comparision of three approaches to motif finding (basic PSSM method, SELEX and improved PSSM).
Tested on the set of known motifs (using JASPAR http://jaspar.genereg.net/ motifs).
get PSSM from list of sequences
setwd("c:/motywy/robocze/")
macierz = read.table("matrix_list.txt",header=F,sep="\t")
listaMotywow = list.files(pattern = "sites")
usunMale <- function(s) {
lista = unlist(strsplit(chartr("atcg", " ", s),""))
lista[lista!=" "]
}
getSekwencje <- function(plik) {
linie = readLines(plik)
indy = seq(2,length(linie)-5,2)
t(sapply(indy, function(i) usunMale(linie[[i]])))
}
listaTabel = lapply(seq_along(listaMotywow), function(i) getSekwencje(listaMotywow[[i]]))
names(listaTabel) = listaMotywow
getPSSM <- function(tabela) {
rbind(A = colSums(tabela=="A"), C = colSums(tabela=="C"),
G = colSums(tabela=="G"), T = colSums(tabela=="T"))
}
listaPSSM = lapply(listaTabel, getPSSM)
listaPSSM[[1]]