# BV.MC.Inbred <- read.csv(paste0("R:/Breeding/MT_TP/Models/Data/Department Data/NEW LINE CODES.csv"))
# BV.MC.Inbred$Pedigree_Backup = BV.MC.Inbred$PEDIGREE
# BV.MC.Inbred = BV.MC.Inbred[,c(1:3,22,4:21)]
# BV.MC.Inbred$PEDIGREE = as.character(BV.MC.Inbred$PEDIGREE)
# BV.MC.Inbred$Pedigree_Backup = as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred$Pedigree_Backup1 = as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred$Pedigree_Backup2= as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred$Pedigree_Backup3 = as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred$Pedigree_Backup4 = as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred$Pedigree_Backup5 = as.character(BV.MC.Inbred$Pedigree_Backup)
# BV.MC.Inbred = BV.MC.Inbred[,c(1:4,22:27,5:21)]
#BV.MC.Inbred$Pedigre_Backup = as.character(BV.MC.Inbred$Pedigre_Backup)
#BV.MC.Inbred$PEDIGREE = as.character(BV.MC.Inbred$PEDIGREE)
#data = BV.MC.Inbred
#
# if(!(suppressWarnings(suppressMessages(require(openxlsx, warn.conflicts = FALSE))))){
# install.packages("openxlsx")
# suppressWarnings(suppressMessages(library(openxlsx, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(dplyr, warn.conflicts = FALSE))))){
# install.packages("dplyr")
# suppressWarnings(suppressMessages(library(dplyr, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(data.table, warn.conflicts = FALSE))))){
# install.packages("data.table")
# suppressWarnings(suppressMessages(library(data.table, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(pastecs, warn.conflicts = FALSE))))){
# install.packages("pastecs")
# suppressWarnings(suppressMessages(library(pastecs, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(tidyr, warn.conflicts = FALSE))))){
# install.packages("tidyr")
# suppressWarnings(suppressMessages(library(tidyr, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(stringr, warn.conflicts = FALSE))))){
# install.packages("stringr")
# suppressWarnings(suppressMessages(library(stringr, warn.conflicts = FALSE)))
# }
#
# if(!(suppressWarnings(suppressMessages(require(tidyverse, warn.conflicts = FALSE))))){
# install.packages("tidyverse")
# (suppressWarnings(suppressMessages(library(tidyverse, warn.conflicts = FALSE))))
# }
#
# if(!(suppressWarnings(suppressMessages(require(doParallel, warn.conflicts = FALSE))))){
# install.packages("doParallel")
# (suppressWarnings(suppressMessages(library(doParallel, warn.conflicts = FALSE))))
# }
#
# if(!(suppressWarnings(suppressMessages(require(ggplot2, warn.conflicts = FALSE))))){
# install.packages("ggplot2")
# (suppressWarnings(suppressMessages(library(ggplot2, warn.conflicts = FALSE))))
# }
pedigreeReduce = function(data, Codes){
if(Codes){
cores=parallel::detectCores()
cl = parallel::makeCluster(cores[1]-1,outfile="")
doParallel::registerDoParallel(cl)
#for(i in (1:nrow(data))){
#bind.data = foreach(i=(1:nrow(data)),.packages=c("tidyverse"), .export=c("str_detect"),.combind=rbind, .multicombine=T)%do%{
data = data
data$match = gsub(data$PEDIGREE, pattern = "HX1", replacement = "Hx1")
female.inbred = "([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})"
male.inbred = "([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})"
generation = "(?:-[[:alnum:]]+){3}"
generation1 = "(?:-[[:alnum:]]+){1}"
generation2 = "(?:-[[:alnum:]]+){2}"
generation3 = "(?:-[[:alnum:]]+){0,6}"
generation4 = "(?:-[[:alnum:]]+){4}"
addgen = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6}"
addgen2 = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,6}[\\)]{0,6}"
staraddgen = "[\\(]{0,6}[?:\\*[[:alnum:]]+]{0,20}[\\)]{0,6}"
decaddgen = "[\\(]{0,6}[?:\\.[[:alnum:]]+]{0,20}[\\)]{0,6}"
decaddgen.1 = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,6}[\\)]{0,6}"
conv1 = paste0("^",female.inbred, "/", male.inbred, generation)
conv1.1 = paste0("^",female.inbred, "/", male.inbred, generation2,"$")
#BDA015/BDA032//BHH069)-B-093-1-1
conv3 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen, generation)
conv3.1 = paste0("^",female.inbred, "/{1,2}", male.inbred, "[\\)]{0,6}",generation3,"[\\)]{0,6}/{1,2}", addgen,"/",addgen, generation2)
conv2 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen)
#I10516/PHJ33//PHN82/I10516)-B-040-3-1-1-02
conv4 = paste0("^",female.inbred, "/", male.inbred, "//", addgen, "/", addgen, generation)
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP021)-B-01
conv4.1 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation2)
#LH195*2/DK2FACC)-B-B-B-0081-01-1-B
conv5 = paste0("^",staraddgen, "/", male.inbred, generation)
conv6 = paste0("^",female.inbred, "/", male.inbred, "//", addgen, "/", addgen)
conv7 = paste0("^",female.inbred, "x", male.inbred, generation)
#PHAW6/PHN82//PHAW6/PHJ33)-007-03-2///P02/R03)-B-057-1-2)-B-002
conv8 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen, generation3,"[\\)]{0,6}",generation2 )
#(BJH074/I11063)/(PHJ40/I7016)-10/I7016)-B-B-69-1-2-B))-B-B-001
conv9 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation3,"[\\)]{0,6}",generation2 )
#((5020/MM501D)/I10516-39.4)/I10516-1-1-1
conv10 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation3,"[\\)]{0,6}",generation2 )
#(I9005/DJ7)-B-040-1-1)/(I9005/ICI740)-B-084-3-3)//(I9005/ICI740)-B-084-3-1-1)
conv3.2 = paste0("^",female.inbred, "/{0,3}", male.inbred,generation3, "[\\)]{0,6}/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen, generation2 )
#(I9005/DJ7)-B-040-1-1)/(I9005/ICI740)-B-084-3-3))-B
conv3.3 = paste0("^",female.inbred, "/{0,3}", male.inbred,generation3, "[\\)]{0,6}/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}",generation2 )
#((065125/054245)/RS710-39.09)/065125-1-4-4
conv11 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, decaddgen,"/{0,3}", decaddgen.1,generation )
#((I5009/I7016.076-2-1-1-2)/R03)/(I5009/I7016.088-2-1)
conv11.1 = paste0("^",female.inbred, "/{0,3}", decaddgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen,"/{0,3}", decaddgen,"/{0,3}", decaddgen.1,generation2,"\\)" )
#(046358/CI6621)/054530-B-45-1-1
conv19 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation2)
#(PHP02/054530)/046358-41
conv19.1 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation2)
conv19.2 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation)
conv19.3 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen, generation2)
#(046358/MM501D)/(046358/I10516)-01-4
conv20 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", female.inbred, "/{1,2}", male.inbred, generation3)
# str_detect(p, pattern = conv1)
# str_match(pattern = conv1, p)
# str_detect(data[i,2], pattern = conv19.3)
# str_match(pattern = conv19.3, data[i,2])
#
data$Proccessed = ""
cov1=function(data){
#for(i in (1:nrow(data))){
if(!stringr::str_detect(data[,3], pattern = "\\.DH")){
#if(!stringr::str_detect(data[,3], pattern = conv1.1)){
if(!stringr::str_detect(data[,3], pattern = conv3)){
if(!stringr::str_detect(data[,3], pattern = conv4)){
if(!grepl(data[,3], pattern ="\\*")){
if(!stringr::str_detect(data[,3], pattern =conv7)){
if(!grepl(data[,3], pattern ="\\(wx")){
if(!grepl(data[,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[,3], pattern ="\\(GA21")){
if(!grepl(data[,3], pattern ="\\:")){
if(!stringr::str_detect(data[,3], pattern ="\\.")){
if(lengths(regmatches(data[,3], gregexpr("/", data[,3]))) == 1){
if(stringr::str_detect(data[,3], pattern = conv1)){
data[,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv1, data[,3])
data[,7] = replacement[1] # add a period for using wildcards
data[,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}#}
return(data.frame(data))
}
data=foreach(i=(1:nrow(data)),.packages=c("tidyverse"),.export=c("str_detect"),.combine=rbind,.inorder=F) %dopar% {
a=cov1(data=data[i,])
a
}
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv3)){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==1){
replacement = str_match(pattern = conv1, data[i,3])
data[i,23] = "Proccessed" # add a period for using wildcards
if(!is.na(replacement)){
if(stringr::str_detect(data[i,3], pattern = fixed(replacement[1]))){
data[i,23] = "Proccessed" # add a period for using wildcards
data[i,8] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}} }}}}}}}}}}}#}
#BDA015/BDA032//BHH069)-B-093-1-1
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
#if(stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3.1)){
if(stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern = conv3.2)){
#if(!stringr::str_detect(data[i,3], pattern = conv3.3)){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==2 ){
if(stringr::str_detect(data[i,3], pattern = conv3)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv3, data[i,3])
data[i,9] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}} }}}}}}}}}}}}
#(I11063/FF6224)-B-B)/(I11063/FF6788)-14-03
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
#if(stringr::str_detect(data[i,3], pattern =conv2)){
if(stringr::str_detect(data[i,3], pattern =conv3.1)){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern = conv3.2)){
if(!stringr::str_detect(data[i,3], pattern = conv3.3)){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3 ){
if(stringr::str_detect(data[i,3], pattern = conv3.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv3.1, data[i,3])
data[i,9] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}} }}}}}}}}}}}}}
#I10516/PHJ33//PHN82/I10516)-B-040-3-1-1-02
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(stringr::str_detect(data[i,3], pattern = conv4)){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!stringr::str_detect(data[i,3], pattern = conv8)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(stringr::str_detect(data[i,3], pattern = conv4)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv4, data[i,3])
data[i,11] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}}}}
# str_match(pattern = conv4.1, data.changed[i,2])
# str_detect(data.changed[i,2], pattern =conv4.1)
#
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP043)-B-18
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
#if(stringr::str_detect(data[i,3], pattern = conv4)){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv4.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv4.1, data[i,3])
data[i,11] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP043)-B-18
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
if(!lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv1.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv1.1, data[i,3])
data[i,10] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}}}
#LH195*2/DK2FACC)-B-B-B-0081-01-1-B
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(stringr::str_detect(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==1){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv5)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv5, data[i,3])
data[i,12] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}
#((065125/054245)/RS710-39.09)/065125-1-4-4
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv11)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(stringr::str_detect(data[i,3], pattern = conv11)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv11, data[i,3])
data[i,13] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}
#I9011-B/LH200//FX8091)-B-B-048
#(046358/CI6621)/054530-B-45
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}#}
#(046358/CI6621)/054530-B
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.1, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}#}
#I9011-B/LH200//FX8091)-B-B-048
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.2)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.2, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}
#I9011-B/LH200//FX8091)-B-B-048
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.3)){
if(!stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv19)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.3)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.3, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}}}
#(056460/CI6621)/(I10516/CI6621)-B-10
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv20)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
#if(!stringr::str_detect(data[i,3], pattern = conv5)){
#if(!stringr::str_detect(data[i,3], pattern = conv3)){
if(stringr::str_detect(data[i,3], pattern = conv20)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv20, data[i,3])
data[i,20] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}#}
data$Matched = ifelse(data$PEDIGREE != data$match, T, F)
# # #
dataF = data %>% dplyr::filter(Matched== F) %>% dplyr::filter(Proccessed != "Proccessed") %>%
dplyr::filter(!grepl(".Male",PEDIGREE)) %>% dplyr::filter(!grepl("\\:",PEDIGREE)) %>% dplyr::filter(!grepl(".Female",PEDIGREE))
# # #
dataPros = data %>% dplyr::filter(Proccessed == "Proccessed")
nrow(dataPros)
nrow(dataPros) / nrow(data)
dataSave = data
data = dataSave
##################################
#DH
# data = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/data.txt" )
# dataF = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataF.txt" )
# dataPros = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataPros.txt" )
generation = "(?:-[[:alnum:]]+){3}"
generation2 = "(?:-[[:alnum:]]+){2}"
generation3 = "(?:\\.[[:alnum:]]+){0,6}"
generation4 = "(?:-[[:alnum:]]+){4}"
generation1 = "(?:-[[:alnum:]]+){1}"
nondigitDH = "([?-][?B][\\.?]DHB[?-][[:alnum:]]{0,4}|[?-][?B][\\.?]DH[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DH-B[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DHB[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DH[?-][[:alnum:]]{0,4})"
digitDH = "([?-]B[\\.?]DHB[[:digit:]]{0,4}|[?-]?B[[:digit:]]{0,4}[\\.?]DH[[:digit:]]{0,4}|[?-]?[\\.?]DH[[:digit:]]{0,4}-B|[?-]?[\\.?]DH[[:digit:]]{0,4})"
nondigitDH1 = "([?-][?B]DHB[?-][[:alnum:]]{0,4}|[?-][?B]DH[?-][[:alnum:]]{0,4}|[?-]?DH-B[?-][[:alnum:]]{0,4}|[?-]?DHB[?-][[:alnum:]]{0,4}|[?-]?DH[?-][[:alnum:]]{0,4})"
digitDH1 = "([?-]BDHB[[:digit:]]{0,4}|[?-]?B[[:digit:]]{0,4}DH[[:digit:]]{0,4}|[?-]?DH[[:digit:]]{0,4}-B|[?-]?DH[[:digit:]]{0,4})"
DH1 = paste0("(", nondigitDH1, "|", digitDH1, ")")
DH = paste0("(", nondigitDH, "|", digitDH, ")")
decaddgen = "[\\(]{0,6}[?:\\.[[:alnum:]]+]{0,6}[\\)]{0,6}"
dhString = paste0("[\\(]{0,6}[[:alnum:]]?(?:-[[:alnum:]]+){0,20}", DH,"[\\)]{0,6}")
male.inbred = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
female.inbred = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
addgen = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
#(046358/912)/PHP02.DH-031-1
convDH12 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, DH)
#(046358/LH185)/(046358/I10516).DH-005-1
convDH13 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, "/{0,3}", addgen, DH)
##((I5009/I7016.DH078-2-1)/R03)/(I5009/I7016.088-2-1)
##convDH14 = paste0("^",male.inbred,"/{0,3}", female.inbred, DH,generation3,"\\){0,3}/{0,3}",generation3,"/{0,3}",generation3,"/{0,3}" ,generation3)# , "\\.",generation2 )#, generation3, "[\\)]{0,6}") #, generation2)
#(054530/I10516)/I10517-B86.DH-023-B
convDH14 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}",addgen, DH,generation1)
#(065125/LH119)/065125)-B-B.DH051-B
convDH15 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, generation1, DH)
#(AW6/R03)/(PHN82 x I8515.DH042))-B-001
convDH16 = paste0("^",male.inbred, "/{0,3}", female.inbred, "/{0,3}", addgen,DH, "\\){0,3}", generation2)
#(I10540/I9570.DH103-1-B)/N46)-B.DHB025
convDH17 = paste0("^",male.inbred, "/{0,3}", female.inbred,DH,generation2,"\\){0,3}/{0,3}", addgen, digitDH)
#(GEMS-0227/I9005)-B.DHB-007
convDH18 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH)
convDH18.1 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH1)
convDH30 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH, generation)
convDH30.1 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH1, generation)
# str_detect(p, pattern = convDH30)
# str_match(pattern = convDH30, p)
# #
# #(I5009/I7016.088-2-1)/(I8044/I9070.DH54-2-2) 15
#(I5009/I7016.DH088-2-1-1-1)/(I5009/I7016.088-2-1) 15
#(I10540/I9570.DH103-1-B)/N46)-B.DHB025 17
#(I5009/I7016.DH104)/I11063.DH017-1 16
#(I8025/I5009.14-1)/I11054)-B.DHB-02 16
#(I8025/I5009.14-B)/(I8025/I5009.DH008-B))-B-011 15 16
#(I8025/I5009.14-B)/(I8025/I5009.DH008-B))-B.DHB-26 15 16
#(I8025/I5009.DH008-1)/I11063)-B-023 16
#(I9005/DJ7)-B-040-1-1)/(LFX6244/I9005.DH032-1-01-2))-B 15
#(LFX6244/I9005.DH022-1-01-1)/(LFX6244/I9005.DH032-1-01-2))-B 15
#(LH212/I9570A.DH020)-1)/LH185)-B.DHB-020 16
#(PHK35 x PHG86.DH127-1)/BAJ808//P38.DHB44
#(PHV78/LH212)-B-B-049-1)/I12510.DHB20
#2369/I11012//I11063)-B.DHB46 15
#BAJ808/HB9//P38.DHB031 15
#BHF027/(BHF041/(PHK35/I7016.DH027-1-1-3)))-B-B-028 15
#BJH074/(PHK29/I7016.DH039-1-1))-B 16
#DSR046358/I10516//CI6621.DH-173)-01 15
#I10001/BJH031)/DSR065125)-B.DH-B-060 16 17
#I10509//I9543/I9560.DH031)-1-1-1 15
#I10516/(DSR046358/3IIH6)-B.DHB-057-2))-B-B-004 17 16
#I10516-B/LH82//CI6621.DH-9)-01 15
#I10516/LH212.DHB-002//BUR024)-B-023 15
#I11503/I10516)/JC6794)-B.DH-B-21 17 16
#I12003/(BHF041/(PHK35/I7016.DH027-1-1-3)))-B.DH063-1 15
#I12028//I8025/I5009.DH008-2-2.DHB-60 15
#I8025/I5009.DH008-1-1)/I11041-2-6)-B-B-009 16
#I8514/I9524.06-2)/I10516.DH-6-01 16
#I9542/I8510)-B.DH02-2)/LH185)-B-B-015 16
#ID5754/I10516-4-3-B)/BQS042)-B.DH-B-019 17 16
#LH198/I11063.DH077-1)-2-2)/BHF027)-B.DH-063-1
#PHN82/I9505.DH072-1)/I10516.DH-19-01 16
#PHN82/I9543.DH140-1-1)/I10516)-B-B-066 16
#PHR03/LH185//BUR070)-B.DHB075 15
#(I5009/I7016.DH104)/I11063.DH002-2-B 16
#PHN82/I9543.DH140-1-1)/I10516)-B-B-090 16
# str_detect(dataF[i,2], pattern = convDH18.1)
# str_match(pattern = convDH18.1, dataF[i,2])
# BAA046/BHH069)-B.DHB-087-1
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) >= 1){
#if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) > 1){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
#if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH18)){
if(stringr::str_detect(data[i,3], pattern = convDH18)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH18, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}}#} #} }}
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(stringr::str_detect(data[i,3], pattern ="\\DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) >= 1){
#if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) > 1){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
# if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
# if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH18.1)){
if(stringr::str_detect(data[i,3], pattern = convDH18.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH18.1, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}#} }}}
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) == 0){
if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) == 0){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
#if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH30)){
if(stringr::str_detect(data[i,3], pattern = convDH30)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH30, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} #}}
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(stringr::str_detect(data[i,3], pattern ="\\DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) == 0){
if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) == 0){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
# if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
# if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH30.1)){
if(stringr::str_detect(data[i,3], pattern = convDH30.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH30.1, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}}#} }}}
#(046358/912)/PHP02.DH-031
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
if(!stringr::str_detect(data[i,3], pattern =convDH14)){
if(stringr::str_detect(data[i,3], pattern =convDH12)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(stringr::str_detect(data[i,3], pattern = convDH12)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH12, data[i,3])
data[i,14] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}
#(046358/LH185)/(046358/I10516).DH-005
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 3){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern =convDH13)){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(stringr::str_detect(data[i,3], pattern = convDH13)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH13, data[i,3])
data[i,15] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}#}}
#(054530/I10516)/I10517-B86.DH-023-B
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(grepl(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
if(stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
if(stringr::str_detect(data[i,3], pattern = convDH14)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH14, data[i,3])
data[i,16] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}}#}
#(065125/LH119)/065125)-B-B.DH051-B
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(grepl(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
if(stringr::str_detect(data[i,3], pattern =convDH15)){
if(!grepl(data[i,3], pattern ="GEMS")){
if(stringr::str_detect(data[i,3], pattern = convDH15)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH15, data[i,3])
data[i,17] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}#}}
data$Matched = ifelse(data$PEDIGREE != data$match, T, F)
# # #
dataF = data %>% dplyr::filter(Matched== F) %>% dplyr::filter(Proccessed != "Proccessed") %>%
dplyr::filter(!grepl(".Male",PEDIGREE)) %>% dplyr::filter(!grepl("\\:",PEDIGREE)) %>% dplyr::filter(!grepl(".Female",PEDIGREE))
# # #
dataPros = data %>% dplyr::filter(Proccessed == "Proccessed")
nrow(dataPros)
print(nrow(dataPros) / nrow(data))
rm(bind.data)
stopCluster(cl)
return(data.frame(data))
}
else{
cores=parallel::detectCores()
cl = parallel::makeCluster(cores[1]-1,outfile="")
doParallel::registerDoParallel(cl)
data = data
data$match = gsub(data$match, pattern = "HX1", replacement = "Hx1")
female.inbred = "([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})"
male.inbred = "([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})"
generation = "(?:-[[:alnum:]]+){3}"
generation1 = "(?:-[[:alnum:]]+){1}"
generation2 = "(?:-[[:alnum:]]+){2}"
generation3 = "(?:-[[:alnum:]]+){0,6}"
generation4 = "(?:-[[:alnum:]]+){4}"
addgen = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6}"
addgen2 = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,6}[\\)]{0,6}"
staraddgen = "[\\(]{0,6}[?:\\*[[:alnum:]]+]{0,20}[\\)]{0,6}"
decaddgen = "[\\(]{0,6}[?:\\.[[:alnum:]]+]{0,20}[\\)]{0,6}"
decaddgen.1 = "[\\(]{0,6}[?:-[[:alnum:]]+]{0,6}[\\)]{0,6}"
conv1 = paste0("^",female.inbred, "/", male.inbred, generation)
conv1.1 = paste0("^",female.inbred, "/", male.inbred, generation2,"$")
#BDA015/BDA032//BHH069)-B-093-1-1
conv3 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen, generation)
conv3.1 = paste0("^",female.inbred, "/{1,2}", male.inbred, "[\\)]{0,6}",generation3,"[\\)]{0,6}/{1,2}", addgen,"/",addgen, generation2)
conv2 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen)
#I10516/PHJ33//PHN82/I10516)-B-040-3-1-1-02
conv4 = paste0("^",female.inbred, "/", male.inbred, "//", addgen, "/", addgen, generation)
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP021)-B-01
conv4.1 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation2)
#LH195*2/DK2FACC)-B-B-B-0081-01-1-B
conv5 = paste0("^",staraddgen, "/", male.inbred, generation)
conv6 = paste0("^",female.inbred, "/", male.inbred, "//", addgen, "/", addgen)
conv7 = paste0("^",female.inbred, "x", male.inbred, generation)
#PHAW6/PHN82//PHAW6/PHJ33)-007-03-2///P02/R03)-B-057-1-2)-B-002
conv8 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen, generation3,"[\\)]{0,6}",generation2 )
#(BJH074/I11063)/(PHJ40/I7016)-10/I7016)-B-B-69-1-2-B))-B-B-001
conv9 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation3,"[\\)]{0,6}",generation2 )
#((5020/MM501D)/I10516-39.4)/I10516-1-1-1
conv10 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen, generation3,"[\\)]{0,6}",generation2 )
#(I9005/DJ7)-B-040-1-1)/(I9005/ICI740)-B-084-3-3)//(I9005/ICI740)-B-084-3-1-1)
conv3.2 = paste0("^",female.inbred, "/{0,3}", male.inbred,generation3, "[\\)]{0,6}/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen, generation2 )
#(I9005/DJ7)-B-040-1-1)/(I9005/ICI740)-B-084-3-3))-B
conv3.3 = paste0("^",female.inbred, "/{0,3}", male.inbred,generation3, "[\\)]{0,6}/{0,3}", addgen, "/{0,3}", addgen, generation3, "[\\)]{0,6}/{0,3}",generation2 )
#((065125/054245)/RS710-39.09)/065125-1-4-4
conv11 = paste0("^",female.inbred, "/{0,3}", male.inbred, "/{0,3}", addgen, decaddgen,"/{0,3}", decaddgen.1,generation )
#((I5009/I7016.076-2-1-1-2)/R03)/(I5009/I7016.088-2-1)
conv11.1 = paste0("^",female.inbred, "/{0,3}", decaddgen, generation3, "[\\)]{0,6}/{0,3}", addgen,"/{0,3}",addgen,"/{0,3}", decaddgen,"/{0,3}", decaddgen.1,generation2,"\\)" )
#(046358/CI6621)/054530-B-45-1-1
conv19 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation2)
#(PHP02/054530)/046358-41
conv19.1 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation2)
conv19.2 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen2, generation)
conv19.3 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", addgen, generation2)
#(046358/MM501D)/(046358/I10516)-01-4
conv20 = paste0("^",female.inbred, "/{1,2}", male.inbred, "/{1,2}", female.inbred, "/{1,2}", male.inbred, generation3)
# str_detect(p, pattern = conv1)
# str_match(pattern = conv1, p)
# str_detect(data[i,2], pattern = conv19.3)
# str_match(pattern = conv19.3, data[i,2])
#
cov1=function(data){
#for(i in (1:nrow(data))){
if(!stringr::str_detect(data[,3], pattern = "\\.DH")){
#if(!stringr::str_detect(data[,3], pattern = conv1.1)){
if(!stringr::str_detect(data[,3], pattern = conv3)){
if(!stringr::str_detect(data[,3], pattern = conv4)){
if(!grepl(data[,3], pattern ="\\*")){
if(!stringr::str_detect(data[,3], pattern =conv7)){
if(!grepl(data[,3], pattern ="\\(wx")){
if(!grepl(data[,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[,3], pattern ="\\(GA21")){
if(!grepl(data[,3], pattern ="\\:")){
if(!stringr::str_detect(data[,3], pattern ="\\.")){
if(lengths(regmatches(data[,3], gregexpr("/", data[,3]))) == 1){
if(stringr::str_detect(data[,3], pattern = conv1)){
data[,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv1, data[,3])
data[,7] = replacement[1] # add a period for using wildcards
data[,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}#}
return(data.frame(data))
}
data=foreach(i=(1:nrow(data)),.packages=c("tidyverse"),.export=c("str_detect"),.combine=rbind,.inorder=F) %dopar% {
a=cov1(data=data[i,])
a
}
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv3)){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==1){
replacement = str_match(pattern = conv1, data[i,3])
data[i,23] = "Proccessed" # add a period for using wildcards
if(!is.na(replacement)){
if(stringr::str_detect(data[i,3], pattern = fixed(replacement[1]))){
data[i,23] = "Proccessed" # add a period for using wildcards
data[i,8] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}} }}}}}}}}}}}#}
#BDA015/BDA032//BHH069)-B-093-1-1
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
#if(stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3.1)){
if(stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern = conv3.2)){
#if(!stringr::str_detect(data[i,3], pattern = conv3.3)){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==2 ){
if(stringr::str_detect(data[i,3], pattern = conv3)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv3, data[i,3])
data[i,9] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}} }}}}}}}}}}}}
#(I11063/FF6224)-B-B)/(I11063/FF6788)-14-03
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
#if(stringr::str_detect(data[i,3], pattern =conv2)){
if(stringr::str_detect(data[i,3], pattern =conv3.1)){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern = conv3.2)){
if(!stringr::str_detect(data[i,3], pattern = conv3.3)){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3 ){
if(stringr::str_detect(data[i,3], pattern = conv3.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv3.1, data[i,3])
data[i,9] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}} }}}}}}}}}}}}}
#I10516/PHJ33//PHN82/I10516)-B-040-3-1-1-02
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(stringr::str_detect(data[i,3], pattern = conv4)){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!stringr::str_detect(data[i,3], pattern = conv8)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(stringr::str_detect(data[i,3], pattern = conv4)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv4, data[i,3])
data[i,11] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}}}}
# str_match(pattern = conv4.1, data.changed[i,2])
# str_detect(data.changed[i,2], pattern =conv4.1)
#
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP043)-B-18
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
#if(stringr::str_detect(data[i,3], pattern = conv4)){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv4.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv4.1, data[i,3])
data[i,11] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}
#(PHAW6/PHN82//PHAW6/PHJ33)-B-039-1)/BRP043)-B-18
for(i in (1:nrow(data))){
if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
if(!stringr::str_detect(data[i,3], pattern = conv4)){
if(!lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >=3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!stringr::str_detect(data[i,3], pattern =conv4.1)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern = conv9)){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv1.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern = conv1.1, data[i,3])
data[i,10] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
} } } }}}}}}}}}}}
#LH195*2/DK2FACC)-B-B-B-0081-01-1-B
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(stringr::str_detect(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==1){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv5)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv5, data[i,3])
data[i,12] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}
#((065125/054245)/RS710-39.09)/065125-1-4-4
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv11)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(stringr::str_detect(data[i,3], pattern = conv11)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv11, data[i,3])
data[i,13] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}
#I9011-B/LH200//FX8091)-B-B-048
#(046358/CI6621)/054530-B-45
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}#}
#(046358/CI6621)/054530-B
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.1, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}#}
#I9011-B/LH200//FX8091)-B-B-048
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.2)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.2, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}
#I9011-B/LH200//FX8091)-B-B-048
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 2){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv19.3)){
if(!stringr::str_detect(data[i,3], pattern = conv19.1)){
if(!stringr::str_detect(data[i,3], pattern = conv19.2)){
if(!stringr::str_detect(data[i,3], pattern = conv19)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
if(stringr::str_detect(data[i,3], pattern = conv19.3)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv19.3, data[i,3])
data[i,19] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}}}}
#(056460/CI6621)/(I10516/CI6621)-B-10
for(i in (1:nrow(data))){
if(!grepl(data[i,3], pattern ="\\.DH")){
#if(!stringr::str_detect(data[i,3], pattern =conv2)){
#if(!stringr::str_detect(data[i,3], pattern =conv3)){
if(!stringr::str_detect(data[i,3], pattern =conv4)){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) >= 3){
if(!stringr::str_detect(data[i,3], pattern =conv7)){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
#if(!stringr::str_detect(data[i,3], pattern = conv1.1)){
if(!grepl(data[i,3], pattern ="\\:")){
if(!stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern = conv20)){
if(!stringr::str_detect(data[i,3], pattern = conv11.1)){
if(!stringr::str_detect(data[i,3], pattern = conv6)){
#if(!stringr::str_detect(data[i,3], pattern = conv5)){
#if(!stringr::str_detect(data[i,3], pattern = conv3)){
if(stringr::str_detect(data[i,3], pattern = conv20)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=conv20, data[i,3])
data[i,20] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}} }}}}}}}}}}}}#}
data$Matched = ifelse(data$pedigree != data$match, T, F)
# # #
dataF = data %>% dplyr::filter(Matched== F) %>% dplyr::filter(proccessed != "Proccessed") %>%
dplyr::filter(!grepl(".Male",pedigree)) %>% dplyr::filter(!grepl("\\:",pedigree)) %>% dplyr::filter(!grepl(".Female",pedigree))
# # #
dataPros = data %>% dplyr::filter(proccessed == "Proccessed")
nrow(dataPros)
nrow(dataPros) / nrow(data)
dataSave = data
data = dataSave
##################################
#DH
# data = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/data.txt" )
# dataF = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataF.txt" )
# dataPros = read.table("C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataPros.txt" )
generation = "(?:-[[:alnum:]]+){3}"
generation2 = "(?:-[[:alnum:]]+){2}"
generation3 = "(?:\\.[[:alnum:]]+){0,6}"
generation4 = "(?:-[[:alnum:]]+){4}"
generation1 = "(?:-[[:alnum:]]+){1}"
nondigitDH = "([?-][?B][\\.?]DHB[?-][[:alnum:]]{0,4}|[?-][?B][\\.?]DH[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DH-B[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DHB[?-][[:alnum:]]{0,4}|[?-]?[\\.?]DH[?-][[:alnum:]]{0,4})"
digitDH = "([?-]B[\\.?]DHB[[:digit:]]{0,4}|[?-]?B[[:digit:]]{0,4}[\\.?]DH[[:digit:]]{0,4}|[?-]?[\\.?]DH[[:digit:]]{0,4}-B|[?-]?[\\.?]DH[[:digit:]]{0,4})"
nondigitDH1 = "([?-][?B]DHB[?-][[:alnum:]]{0,4}|[?-][?B]DH[?-][[:alnum:]]{0,4}|[?-]?DH-B[?-][[:alnum:]]{0,4}|[?-]?DHB[?-][[:alnum:]]{0,4}|[?-]?DH[?-][[:alnum:]]{0,4})"
digitDH1 = "([?-]BDHB[[:digit:]]{0,4}|[?-]?B[[:digit:]]{0,4}DH[[:digit:]]{0,4}|[?-]?DH[[:digit:]]{0,4}-B|[?-]?DH[[:digit:]]{0,4})"
DH1 = paste0("(", nondigitDH1, "|", digitDH1, ")")
DH = paste0("(", nondigitDH, "|", digitDH, ")")
decaddgen = "[\\(]{0,6}[?:\\.[[:alnum:]]+]{0,6}[\\)]{0,6}"
dhString = paste0("[\\(]{0,6}[[:alnum:]]?(?:-[[:alnum:]]+){0,20}", DH,"[\\)]{0,6}")
male.inbred = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
female.inbred = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
addgen = paste0("(([\\(]{0,6}[?:-[[:alnum:]]+]{0,20}[\\)]{0,6})|", dhString,")")
#(046358/912)/PHP02.DH-031-1
convDH12 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, DH)
#(046358/LH185)/(046358/I10516).DH-005-1
convDH13 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, "/{0,3}", addgen, DH)
##((I5009/I7016.DH078-2-1)/R03)/(I5009/I7016.088-2-1)
##convDH14 = paste0("^",male.inbred,"/{0,3}", female.inbred, DH,generation3,"\\){0,3}/{0,3}",generation3,"/{0,3}",generation3,"/{0,3}" ,generation3)# , "\\.",generation2 )#, generation3, "[\\)]{0,6}") #, generation2)
#(054530/I10516)/I10517-B86.DH-023-B
convDH14 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}",addgen, DH,generation1)
#(065125/LH119)/065125)-B-B.DH051-B
convDH15 = paste0("^",male.inbred,"/{0,3}", female.inbred,"/{0,3}", addgen, generation1, DH)
#(AW6/R03)/(PHN82 x I8515.DH042))-B-001
convDH16 = paste0("^",male.inbred, "/{0,3}", female.inbred, "/{0,3}", addgen,DH, "\\){0,3}", generation2)
#(I10540/I9570.DH103-1-B)/N46)-B.DHB025
convDH17 = paste0("^",male.inbred, "/{0,3}", female.inbred,DH,generation2,"\\){0,3}/{0,3}", addgen, digitDH)
#(GEMS-0227/I9005)-B.DHB-007
convDH18 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH)
convDH18.1 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH1)
convDH30 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH, generation)
convDH30.1 = paste0("^",male.inbred, "/{0,3}", female.inbred, DH1, generation)
# str_detect(p, pattern = convDH30)
# str_match(pattern = convDH30, p)
# #
# #(I5009/I7016.088-2-1)/(I8044/I9070.DH54-2-2) 15
#(I5009/I7016.DH088-2-1-1-1)/(I5009/I7016.088-2-1) 15
#(I10540/I9570.DH103-1-B)/N46)-B.DHB025 17
#(I5009/I7016.DH104)/I11063.DH017-1 16
#(I8025/I5009.14-1)/I11054)-B.DHB-02 16
#(I8025/I5009.14-B)/(I8025/I5009.DH008-B))-B-011 15 16
#(I8025/I5009.14-B)/(I8025/I5009.DH008-B))-B.DHB-26 15 16
#(I8025/I5009.DH008-1)/I11063)-B-023 16
#(I9005/DJ7)-B-040-1-1)/(LFX6244/I9005.DH032-1-01-2))-B 15
#(LFX6244/I9005.DH022-1-01-1)/(LFX6244/I9005.DH032-1-01-2))-B 15
#(LH212/I9570A.DH020)-1)/LH185)-B.DHB-020 16
#(PHK35 x PHG86.DH127-1)/BAJ808//P38.DHB44
#(PHV78/LH212)-B-B-049-1)/I12510.DHB20
#2369/I11012//I11063)-B.DHB46 15
#BAJ808/HB9//P38.DHB031 15
#BHF027/(BHF041/(PHK35/I7016.DH027-1-1-3)))-B-B-028 15
#BJH074/(PHK29/I7016.DH039-1-1))-B 16
#DSR046358/I10516//CI6621.DH-173)-01 15
#I10001/BJH031)/DSR065125)-B.DH-B-060 16 17
#I10509//I9543/I9560.DH031)-1-1-1 15
#I10516/(DSR046358/3IIH6)-B.DHB-057-2))-B-B-004 17 16
#I10516-B/LH82//CI6621.DH-9)-01 15
#I10516/LH212.DHB-002//BUR024)-B-023 15
#I11503/I10516)/JC6794)-B.DH-B-21 17 16
#I12003/(BHF041/(PHK35/I7016.DH027-1-1-3)))-B.DH063-1 15
#I12028//I8025/I5009.DH008-2-2.DHB-60 15
#I8025/I5009.DH008-1-1)/I11041-2-6)-B-B-009 16
#I8514/I9524.06-2)/I10516.DH-6-01 16
#I9542/I8510)-B.DH02-2)/LH185)-B-B-015 16
#ID5754/I10516-4-3-B)/BQS042)-B.DH-B-019 17 16
#LH198/I11063.DH077-1)-2-2)/BHF027)-B.DH-063-1
#PHN82/I9505.DH072-1)/I10516.DH-19-01 16
#PHN82/I9543.DH140-1-1)/I10516)-B-B-066 16
#PHR03/LH185//BUR070)-B.DHB075 15
#(I5009/I7016.DH104)/I11063.DH002-2-B 16
#PHN82/I9543.DH140-1-1)/I10516)-B-B-090 16
# str_detect(dataF[i,2], pattern = convDH18.1)
# str_match(pattern = convDH18.1, dataF[i,2])
# BAA046/BHH069)-B.DHB-087-1
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) >= 1){
#if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) > 1){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
#if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH18)){
if(stringr::str_detect(data[i,3], pattern = convDH18)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH18, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}}#} #} }}
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(stringr::str_detect(data[i,3], pattern ="\\DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) >= 1){
#if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) > 1){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
# if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
# if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH18.1)){
if(stringr::str_detect(data[i,3], pattern = convDH18.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH18.1, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}#} }}}
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) == 0){
if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) == 0){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
#if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH30)){
if(stringr::str_detect(data[i,3], pattern = convDH30)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH30, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} #}}
#(GEMS-0227/I9005)-B.DHB-063
for(i in (1:nrow(data))){
if(stringr::str_detect(data[i,3], pattern ="\\DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 1){
if(lengths(regmatches(data[i,3], gregexpr("\\)", data[i,3]))) == 0){
if(lengths(regmatches(data[i,3], gregexpr("\\(", data[i,3]))) == 0){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
#if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
# if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
# if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(stringr::str_detect(data[i,3], pattern =convDH30.1)){
if(stringr::str_detect(data[i,3], pattern = convDH30.1)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH30.1, data[i,3])
data[i,18] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}}#} }}}
#(046358/912)/PHP02.DH-031
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern = "\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
if(!stringr::str_detect(data[i,3], pattern =convDH14)){
if(stringr::str_detect(data[i,3], pattern =convDH12)){
if(!stringr::str_detect(data[i,3], pattern =convDH16)){
if(stringr::str_detect(data[i,3], pattern = convDH12)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH12, data[i,3])
data[i,14] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}} }}}}} }}
#(046358/LH185)/(046358/I10516).DH-005
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 3){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(stringr::str_detect(data[i,3], pattern ="\\.")){
if(stringr::str_detect(data[i,3], pattern =convDH13)){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
#if(!stringr::str_detect(data[i,3], pattern =convDH15)){
if(stringr::str_detect(data[i,3], pattern = convDH13)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH13, data[i,3])
data[i,15] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}#}}
#(054530/I10516)/I10517-B86.DH-023-B
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!stringr::str_detect(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(grepl(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
if(stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
if(!stringr::str_detect(data[i,3], pattern =convDH17)){
if(!stringr::str_detect(data[i,3], pattern ="GEMS")){
if(stringr::str_detect(data[i,3], pattern = convDH14)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH14, data[i,3])
data[i,16] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}}#}
#(065125/LH119)/065125)-B-B.DH051-B
for(i in (1:nrow(data))){
if(grepl(data[i,3], pattern ="\\.DH")){
if(!grepl(data[i,3], pattern ="\\*")){
if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) == 2){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(wx")){
if(!grepl(data[i,3], pattern ="\\(GA21")){
if(!grepl(data[i,3], pattern ="\\:")){
if(grepl(data[i,3], pattern ="\\.")){
#if(!stringr::str_detect(data[i,3], pattern =convDH13)){
#if(!stringr::str_detect(data[i,3], pattern =convDH14)){
#if(!stringr::str_detect(data[i,3], pattern =convDH12)){
if(stringr::str_detect(data[i,3], pattern =convDH15)){
if(!grepl(data[i,3], pattern ="GEMS")){
if(stringr::str_detect(data[i,3], pattern = convDH15)){
data[i,23] = "Proccessed" # add a period for using wildcards
replacement = str_match(pattern=convDH15, data[i,3])
data[i,17] = replacement[1] # add a period for using wildcards
data[i,3] = replacement[1] # add a period for using wildcards
}}}}}} }}}}}}#}}
data$Matched = ifelse(data$pedigree != data$match, T, F)
# # #
dataF = data %>% dplyr::filter(Matched== F) %>% dplyr::filter(proccessed != "Proccessed") %>%
dplyr::filter(!grepl(".Male",pedigree)) %>% dplyr::filter(!grepl("\\:",pedigree)) %>% dplyr::filter(!grepl(".Female",pedigree))
# # #
dataPros = data %>% dplyr::filter(proccessed == "Proccessed")
nrow(dataPros)
print(nrow(dataPros) / nrow(data))
#write.table(dataPros, "C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataPros.txt")
#write.table(dataF, "C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataF.txt")
#write.table(data, "C:/Users/jake.lamkey/Desktop/5-Year GCA Results/data.txt")
#write.csv(dataF, "C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataF.csv")
#write.csv(dataPros, "C:/Users/jake.lamkey/Desktop/5-Year GCA Results/dataPros.csv")
# dhStringped.07 = paste0(digitDH,"?", nondigitDH,"?","[[:alnum:]]*(?:-[[:alnum:]]+){0}")
#
# dhStringperiod = paste0("[[:alnum:]]*(?:-([[:alnum:]]+(\\.)?[[:alnum:]])+){0,5}(-)?",digitDH,"?(-)?", nondigitDH,"?","(?:-[[:alnum:]]+){0,5}")
#
# patterns.04 = paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}",digitDH)
# patterns.05 = paste0("[\\(]{0,4}",dhStringped,"/",dhString)
# #((MM501D/CI6621)/I10516-52.2)/I10516-3-1-1-2-B
# patterns.06 = paste0("[\\(]{0,4}[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringped,"[\\)]{0,4}/",dhStringped)
# #(046358/LH185)/(046358/I10516).DH-007
# patterns.07 = paste0("[\\(]{0,4}",dhStringped,"/", dhStringped,"[\\)]{0,4}/[\\(]{0,4}", dhStringped,"/", dhStringped,"[\\)]{0,4}", dhStringped.07)
#
# bcString = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,4}(-)?",digitDH,"?(-)?", nondigitDH,"?")
# patterns30=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringperiod,"[\\)]{0,4}/",bcString,"(?:-[[:alnum:]]+){2}")
# patterns.27=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}",dhStringped,"([[:alnum:]]+){1}")
# patterns.26=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}","(?:-[[:alnum:]]+){3}")
# patterns.25=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringperiod,"[\\)]{0,4}/",bcString,"(?:-[[:alnum:]]+){2}")
# # #patterns.30=paste0("^[\\(]{0,1}[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,1}/",dhStringperiod,"\\)/",bcString,"(?:-[[:alnum:]]+){2}")
# patterns.08 = paste0("\\(",dhStringped,"/", dhStringped,"/", dhStringped,"\\)","[[:alnum:]]*(?:-[[:alnum:]]+){2}")
# dhStringped3 = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,2}",digitDH,"?", nondigitDH,"?","(?:-[[:alnum:]]+){0,1}")
# patterns.20=paste0("^\\(",dhStringped,":",dhStringped,"\\)", dhStringped3)
# dhStringped = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,20}",digitDH,"?", nondigitDH,"?","(?:-[[:alnum:]]+){0,3}")
#
# dhString = paste0("[[:alnum:]]?(?:-[[:alnum:]]+){0,20}", digitDH, "?", nondigitDH, "?")
#
# patterns.4way =paste0("^[\\(]{0,6}",dhStringped,"/",dhStringped,"[\\)]{0,6}/[\\(]{0,6}",dhStringped,"/",dhStringped,"[\\)]{0,6}","(?:-[[:alnum:]]+){4}")
#
#nondigitDH ="((?-)?B\\.DHB|(?-)?B\\.DH|(?-)?\\.DH-B|(?-)?\\.DHB|(?-)?\\.DH)"
#BDA015/BDA032//BHH069)-B-093-1-1 ?error
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern = conv4)){
# #if(stringr::str_detect(data[i,3], pattern =conv3)){
# if(lengths(regmatches(data[i,3], gregexpr("/", data[i,3]))) ==2 ){
#
# replacement = str_match(pattern = conv3, data[i,3])
#
# if(!is.na(replacement)){
# if(stringr::str_detect(data[i,3], pattern = fixed(replacement[1]))){
# data[i,10] = replacement[1] # add a period for using wildcards
# data[i,3] = replacement[1] # add a period for using wildcards
#
# }} }}}}
rm(bind.data)
parallel::stopCluster(cl)
return(data.frame(data))
}
}
#
# data$Matched = ifelse(data$pedigree != data$match, T, F)
# # #
# dataF = data %>% dplyr::filter(Matched== T)
#
# #DH material######################################################
######B.DH min of either F4 or NewDH
##################################
#DH
#
# #I9005/LH198)-B.DH045-1-2 #F4
# #digitDH = "(((-)?B\\.DHB[0-9]+)|((-)?B\\.DH[0-9]+)|((-)?\\.DH-B[0-9]+)|((-)?\\.DHB[0-9]+)|((-)?\\.DH[0-9]+))"
# #nondigitDH ="((-)?B\\.DHB[^[0-9]]+|(-)?B\\.DH[^[0-9]]+|(-)?\\.DH-B[^[0-9]]+|(-)?\\.DHB[^[0-9]]+|(-)?\\.DH[^[0-9]]+)"
# dhString = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,5}",digitDH,"?", nondigitDH,"?")
# dhStringped = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,5}",digitDH,"?", nondigitDH,"?","(?:-[[:alnum:]]+){0,5}")
# dhStringped.07 = paste0(digitDH,"?", nondigitDH,"?","[[:alnum:]]*(?:-[[:alnum:]]+){0}")
#
# dhStringperiod = paste0("[[:alnum:]]*(?:-([[:alnum:]]+(\\.)?[[:alnum:]])+){0,5}(-)?",digitDH,"?(-)?", nondigitDH,"?","(?:-[[:alnum:]]+){0,5}")
#
# patterns.04 = paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}",digitDH)
# patterns.05 = paste0("[\\(]{0,4}",dhStringped,"/",dhString)
# #((MM501D/CI6621)/I10516-52.2)/I10516-3-1-1-2-B
# patterns.06 = paste0("[\\(]{0,4}[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringped,"[\\)]{0,4}/",dhStringped)
# #(046358/LH185)/(046358/I10516).DH-007
# patterns.07 = paste0("[\\(]{0,4}",dhStringped,"/", dhStringped,"[\\)]{0,4}/[\\(]{0,4}", dhStringped,"/", dhStringped,"[\\)]{0,4}", dhStringped.07)
#
# bcString = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,4}(-)?",digitDH,"?(-)?", nondigitDH,"?")
# patterns30=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringperiod,"[\\)]{0,4}/",bcString,"(?:-[[:alnum:]]+){2}")
# patterns.27=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}",dhStringped,"([[:alnum:]]+){1}")
# patterns.26=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}","(?:-[[:alnum:]]+){3}")
# patterns.25=paste0("[\\(]{0,4}",dhStringped,"/",dhStringped,"[\\)]{0,4}/",dhStringperiod,"[\\)]{0,4}/",bcString,"(?:-[[:alnum:]]+){2}")
# # #patterns.30=paste0("^[\\(]{0,1}[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,1}/",dhStringperiod,"\\)/",bcString,"(?:-[[:alnum:]]+){2}")
# patterns.08 = paste0("\\(",dhStringped,"/", dhStringped,"/", dhStringped,"\\)","[[:alnum:]]*(?:-[[:alnum:]]+){2}")
# dhStringped3 = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,2}",digitDH,"?", nondigitDH,"?","(?:-[[:alnum:]]+){0,1}")
# patterns.20=paste0("^\\(",dhStringped,":",dhStringped,"\\)", dhStringped3)
# #CI6621/054530)-B.DH089
# #046358/054530)-B.DH-009
# #(GEMS-0227/I9005)-B.DHB-007
#
# for(i in (1:nrow(data))){
# if(grepl(data[i,3], pattern ="\\.DH")){
# if(stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.07)){
#
# replacement = str_match(pattern = patterns.04, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} } }}
#
# #1.3432321e-01
# #LH198/I10001.DH02-3
# #CI6621/054530)-B.DH089-1-B-B-B
# for(i in (1:nrow(data))){
# if(grepl(data[i,3], pattern ="\\.DH")){
# if(stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.07)){
#
# replacement = str_match(pattern = patterns.05, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}
#
# #(046358/LH185)/(046358/I10516).DH-029
# for(i in (1:nrow(data))){
# if(stringr::str_detect(data[i,3], pattern = "\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# if(stringr::str_detect(data[i,3], pattern = patterns.07)){
#
# replacement = str_match(pattern = patterns.07, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}
#
# #(GEMS-0227/I9005)-B.DHB-015-1
# #(I10516/JC6794)/I10516.DH-093-1-B
# #(ID5754/3IIH6)/DSR046358).DH-B-070-B
# #(I11063/I12003)/I12003.DH132-1-B-B
# #(LH185/CJ7008)/(KDL6289/LH185)).DHB-06 add in as pattern to filter
# #046358/054530)-B.DH-009-1-B add in as pattern to filter
# #24AFD-B04/40AQA-B03.DH-013)-B add in as pattern to filter
# #patterns.25=paste0("^[\\(]{0,1}[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,1}/",dhStringperiod,"\\)/",bcString,"(?:-[[:alnum:]]+){2}")
#
# # for(i in (1:nrow(data))){
# # if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
# # if(!stringr::str_detect(data[i,3], pattern =patterns30)){
# # if(!stringr::str_detect(data[i,3], pattern = patterns.25)){
# # if(!stringr::str_detect(data[i,3], pattern = patterns.26)){
# # if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# # if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# # if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# # if(stringr::str_detect(data[i,3], pattern = patterns.26)){
# #
# # replacement = str_match(pattern = patterns.26, data[i,3])
# # data[i,3] = replacement[1] # add a period for using wildcards
# # }} }}}}}}}
#
#
#
#
#
# #Back-Cross BC2S3###########################################################
# #((MM501D/CI6621)/I10516-57.1)/I10516-4-1-1 #BC2S3
#
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern =patterns30)){
# if(stringr::str_detect(data[i,3], pattern = patterns.25)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.07)){
#
# replacement = str_match(pattern = patterns.25, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}}
#
#
# #Four-way Cross#######################################################
#
#
# #(046358/LH185)/(046358/CI6621)-B-24-1 #F4
#
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern =patterns30)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.25)){
# if(stringr::str_detect(data[i,3], pattern = patterns.26)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
#
# replacement = str_match(pattern = patterns.26, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}}}
#
# #(046358/LH185)/(046358/I10516).DH-014 #DH1
#
# for(i in (1:nrow(data))){
# if(stringr::str_detect(data[i,3], pattern = "\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern =patterns30)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.25)){
# if(stringr::str_detect(data[i,3], pattern = patterns.27)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
#
# replacement = str_match(pattern = patterns.27, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}}}
#
#
# #three-way Cross#######################################################
# patterns.08 = paste0("\\(",dhStringped,"/", dhStringped,"/", dhStringped,"\\)","[[:alnum:]]*(?:-[[:alnum:]]+){2}")
#
# #(2FACC/999165/065125)-06-5
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern = "\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern =patterns30)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.25)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.27)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.05)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.04)){
# if(!stringr::str_detect(data[i,3], pattern = patterns.06)){
# if(stringr::str_detect(data[i,3], pattern = patterns.08)){
#
# replacement = str_match(pattern = patterns.08, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }}}}}}}
#
# #: Cross#######################################################
#
# dhStringped3 = paste0("[[:alnum:]]*(?:-[[:alnum:]]+){0,2}",digitDH,"?", nondigitDH,"?","(?:-[[:alnum:]]+){0,1}")
# patterns.20=paste0("^\\(",dhStringped,":",dhStringped,"\\)", dhStringped3)
# #(BR52051:S172641)-B-018-B #F4
#
# for(i in (1:nrow(data))){
# if(stringr::str_detect(data[i,3], pattern = ":")){
# #if(stringr::str_detect(data[i,3], pattern =digitDH)){
# if(stringr::str_detect(data[i,3], pattern = patterns.20)){
# replacement = str_match(pattern = patterns.20, data[i,3])
# data[i,3] = replacement[1] # add a period for using wildcards
# }} }
#
#
# # for(i in (1:nrow(data))){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(stringr::str_detect(data[i,3], pattern = conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # replacement = str_match(pattern= conv2,data[i,3])
# # data[i,3] = replacement
# # }}}}}}}}}}}}}
# #
# # for(i in (1:nrow(data))){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # # add a period for using wildcards
# # if(stringr::str_detect(data[i,3], pattern = conv3)){
# # replacement = str_match(pattern= conv3,data[i,3])
# # data[i,3] = replacement# add a period for using wildcards
# # }}}}}}}}}}}}}
# #
# # for(i in (1:nrow(data))){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # if(stringr::str_detect(data[i,3], pattern = conv4)){
# # replacement = str_match(pattern= conv4,data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}
# #
# # for(i in (1:nrow(data))){
# # if(!stringr::str_detect(data[i,3], pattern =patterns.4way)){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# #
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(stringr::str_detect(data[i,3], pattern = conv5)){
# # replacement = str_match(pattern= conv5,data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}}
#
# #Three-way crosses######################################################
# ########
# patterns.4way=paste0("^[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,1}/[\\(]{0,1}",dhStringped,"/",dhStringped,"[\\)]{0,1}","(?:-addgen){4}")
#
# #(I11063/I12003)/065125-35-5 F4
# #(065125/054245)/I10001-29-5-1-1-1-3-01
# #(I11063/I12003)/065125-35-5-1-1-B
#
#
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern =patterns.4way)){
# if(!stringr::str_detect(data[i,3], pattern =conv2)){
# if(!stringr::str_detect(data[i,3], pattern =conv3)){
# if(!stringr::str_detect(data[i,3], pattern =conv4)){
# if(!stringr::str_detect(data[i,3], pattern =conv5)){
# if(!stringr::str_detect(data[i,3], pattern =conv1)){
# if(!stringr::str_detect(data[i,3], pattern =conv7)){
# if(!stringr::str_detect(data[i,3], pattern =conv8)){
# if(!stringr::str_detect(data[i,3], pattern =conv9)){
# if(!stringr::str_detect(data[i,3], pattern =conv10)){
# if(!stringr::str_detect(data[i,3], pattern =conv11)){
# if(!grepl(data[i,3], pattern ="\\.DH")){
# if(stringr::str_detect(data[i,3], pattern = conv6)){
# replacement = str_match(pattern=conv6, data[i,3])
# data[i,3] = replacement # add a period for using wildcards
# }}}}}}}}}}}}}}
#
# #((PHV78/PHG47)/3IIH6)-B-002-1
# # for(i in (1:nrow(data))){
# # if(!stringr::str_detect(data[i,3], pattern =patterns.4way)){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(stringr::str_detect(data[i,3], pattern = conv7)){
# # replacement = str_match(pattern=conv7, data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}}
#
# # #DSR065125/(065125/I11063))-B-084-B
# # for(i in (1:nrow(data))){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # if(stringr::str_detect(data[i,3], pattern = conv8)){
# # replacement = str_match(pattern=conv8,data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}
# #
# # #FF6224/BJH104-B-B)/I12003)-B-149-B
# # for(i in (1:nrow(data))){
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(stringr::str_detect(data[i,3], pattern = conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv10)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # replacement = str_match(pattern=conv9,data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}
# #
# # #(65125/I10001)/I12003)-B-B-32-1-1-B
# # for(i in (1:nrow(data))){
# # if(!stringr::str_detect(data[i,3], pattern =patterns.4way)){
# #
# # if(!grepl(data[i,3], pattern ="\\.DH")){
# # if(!stringr::str_detect(data[i,3], pattern =conv2)){
# # if(!stringr::str_detect(data[i,3], pattern =conv3)){
# # if(!stringr::str_detect(data[i,3], pattern =conv4)){
# # if(!stringr::str_detect(data[i,3], pattern =conv5)){
# # if(!stringr::str_detect(data[i,3], pattern =conv6)){
# # if(!stringr::str_detect(data[i,3], pattern =conv7)){
# # if(!stringr::str_detect(data[i,3], pattern =conv8)){
# # if(!stringr::str_detect(data[i,3], pattern =conv9)){
# # if(!stringr::str_detect(data[i,3], pattern =conv1)){
# # if(!stringr::str_detect(data[i,3], pattern =conv11)){
# # if(stringr::str_detect(data[i,3], pattern = conv10)){
# # replacement = str_match(pattern= conv10,data[i,3])
# # data[i,3] = replacement # add a period for using wildcards
# # }}}}}}}}}}}}}}
# #
# #BDA015/BDA032//BHH069)-B-093-1-1
# for(i in (1:nrow(data))){
# if(!grepl(data[i,3], pattern ="\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern =conv2)){
# if(!stringr::str_detect(data[i,3], pattern =conv3)){
# if(!stringr::str_detect(data[i,3], pattern =conv4)){
# if(!stringr::str_detect(data[i,3], pattern =conv5)){
# if(!stringr::str_detect(data[i,3], pattern =conv6)){
# if(!stringr::str_detect(data[i,3], pattern =conv7)){
# if(!stringr::str_detect(data[i,3], pattern =conv8)){
# if(!stringr::str_detect(data[i,3], pattern =conv9)){
# if(!stringr::str_detect(data[i,3], pattern =conv10)){
# if(!stringr::str_detect(data[i,3], pattern =conv1)){
# if(stringr::str_detect(data[i,3], pattern = conv11)){
# replacement = str_match(pattern=conv11, data[i,3])
# data[i,3] = replacement # add a period for using wildcards
# }}} }}}}}}}}}}
#
#
# for(i in (1:nrow(data))){
# if(!stringr::str_detect(data[i,3], pattern =patterns.4way)){
# if(!grepl(data[i,3], pattern ="\\.DH")){
# if(!stringr::str_detect(data[i,3], pattern =conv4)){
# if(!stringr::str_detect(data[i,3], pattern =conv3)){
# #if(!stringr::str_detect(data[i,3], pattern =conv5)){
#
# if(stringr::str_detect(data[i,3], pattern = conv2)){
# replacement = str_match(pattern=conv2, data[i,3])
# data[i,3] = replacement # add a period for using wildcards
# }}} }}}#}
# conv2 = paste0(female.inbred,extend.inbred,"/",male.inbred,generation)
#conv3 = paste0(female.inbred,"/",addgen,extend.inbred,generation)
#conv4 = paste0(female.inbred,"/",addgen,generation)
# conv5 = paste0(female.inbred,extend.inbred,"/",addgen,extend.inbred,generation)
#conv2 = paste0(female.inbred,"/",male.inbred,"/",addgen,generation2)
#((PHV78/PHG47)/3IIH6)-B-002-1
#conv7 = paste0(female.inbred,"/",addgen,extend.inbred,"/",addgen,generation)
#DSR065125/(065125/I11063))-B-084-B
# conv8 = paste0(female.inbred,extend.inbred,"/",female.inbred,extend.inbred,"/",addgen,extend.inbred,generation)
#FF6224/BJH104-B-B)/I12003)-B-149-B
#conv9 = paste0(female.inbred,extend.inbred,"/",addgen,extend.inbred,"/",addgen,extend.inbred,generation)
#(65125/I10001)/I12003)-B-B-32-1-1-B
#conv10 = paste0(addgen,extend.inbred,"/",addgen,extend.inbred,"/",addgen, extend.inbred, generation)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.