Avaliação individual do grupo 4 formado a partir dos marcadores contidos neste arquivo. Para mais informações acesse a página principal.

1 Carregando dados gerados na pagina principal

load("LGs_force_HMM_Markers_First_Check.RData")
load("LGs_safe_HMM_Markers_First_Check.RData")


library(onemap)
data1 <- read_mapmaker(file = "data_with_head.raw")
LOD <- suggest_lod(data1)
rf2points <- rf_2pts(data1, LOD = LOD, max.rf = 0.5)

2 Comparando “safe” e “force”

#Marcadores presentes no "force" e ausentes no "safe" de HMM
comp_unsafe <- LGs.HMM.force[[4]]$seq.num %in% LGs.HMM.safe[[4]]$seq.num
pos_unsafe <- which(comp_unsafe == FALSE)
unsafe <- LGs.HMM.force[[4]]$seq.num[pos_unsafe]
unsafe 
##  [1] 116 256 179 254  74 183  70 185  23  39 169
rf_graph_table(LGs.HMM.force[[4]], scale = 2.2,
               inter = FALSE)

3 Breve comparação com o mapa publicado

Desde já podemos comparar os grupos formados com o mapa já publicado, para sabermos a correspondência entre ambos. Para facilitar, fizemos esta tabela com os nomes dos marcadores que compoem o mapa publicado, sendo que cada coluna da tabela corresponde à um grupo de ligação.

4 Verificando com o mapa antigo

ref <- read.csv(file = "LG.csv", stringsAsFactors = FALSE)
names4 <- colnames(data1$geno)[LGs.HMM.force[[4]]$seq.num]

comp <- pos <- lgs <- pos2 <- num_lgs <- list()
for (i in 1:length(ref)){
  comp[[i]] <- ref[[i]] %in% names4
  pos[[i]] <- which(comp[[i]] == TRUE)
  lgs[[i]] <- ref[[i]][pos[[i]]]
  pos2[[i]] <- names4 %in% lgs[[i]]
  num_lgs[[i]] <- LGs.HMM.force[[4]]$seq.num[pos2[[i]]]
}

# Todos no grupo 4 do mapa antigo
comp
## [[1]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[2]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[3]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[4]]
##  [1]  TRUE  TRUE  TRUE  TRUE FALSE  TRUE FALSE FALSE  TRUE  TRUE FALSE
## [12]  TRUE  TRUE  TRUE  TRUE FALSE  TRUE
## 
## [[5]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[6]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[7]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[8]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[9]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[10]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[11]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[12]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[13]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE
## 
## [[14]]
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [12] FALSE FALSE FALSE FALSE FALSE FALSE

5 Removendo marcadores duvidosos

Conforme heatmap gerado pela cadeia de markov e as sugestões do comando “safe”, removemos alguns marcadores duvidosos do mapa na intenção de aprimorar o ordenamento.

Temp <- c(133, 70, 116, 4, 125, 23, 183, 124)

Exc <- LGs.HMM.force[[4]]$seq.num %in% Temp

pos <- which(Exc == TRUE)

LG4.Exc <- LGs.HMM.force[[4]]$seq.num[-pos]

LG4 <- make_seq(rf2points, LG4.Exc)

LG4.ord <- order_seq(LG4, n.init = 5, THRES = 3,
                       touchdown = TRUE, draw.try = FALSE)


LG4.ord.seq <- make_seq(LG4.ord, "force")
rf_graph_table(LG4.ord.seq, scale = 1.5, main = paste("LG", 4, "- HMM"),
               inter = FALSE, axis.cex = 0.75)

6 Inserindo novamente os marcadores

Temp
Exten.LG4 <- try_seq(LG4.ord.seq, 183)

Exten.LG4

pos <- Exten.LG4$LOD == 0

pos <- which(pos == TRUE)

Check <- make_seq(Exten.LG4, pos)

LG4.ord.seq
Check

c(LG4.ord.seq$seq.like, Check$seq.like) 

rf_graph_table(Check, scale = 1.5, main = paste("LG", 4, "- HMM"),
               inter = FALSE, axis.cex = 0.75)

LG4.exp <- make_seq(Exten.LG4, pos) 

################
Temp

Exten.LG4 <- try_seq(LG4.exp, 124)

Exten.LG4

pos <- Exten.LG4$LOD == 0

pos <- which(pos == TRUE)

Check <- make_seq(Exten.LG4, pos)

LG4.exp
Check

c(LG4.ord.seq$seq.like, Check$seq.like) 

LG4 <- Check

rf_graph_table(Check, scale = 2.2,
               inter = FALSE)

save(LG4, file = "LG4.Rdata")

##Sobraram:
comp <- LGs.HMM.force[[4]]$seq.num %in% LG4$seq.num
pos <- which(comp == FALSE)
trash.LG4 <- LGs.HMM.force[[4]]$seq.num[pos]
trash.LG4
## [1] 116   4 125 133  70  23

Ao serem inseridos no mapa, esses marcadores aumentavam o tamanho, diminuiam a verossimilhança e fugiam do padrão esperado no heatmap.