mirror of
https://github.com/dchakro/shared_Rscripts.git
synced 2026-05-17 09:12:16 -07:00
unparalogMutations checks & installs dependencies only when it is sourced, and not everytime the function was called (as previously).
31 lines
1.2 KiB
R
31 lines
1.2 KiB
R
# #<---------------------------->
|
|
# # Please include this section when distributing and/or using this code.
|
|
# # Please read and abide by the terms of the included LICENSE
|
|
# #
|
|
# # Author : Deepankar Chakroborty (https://gitlab.utu.fi/deecha)
|
|
# # Report issues: https://gitlab.utu.fi/deecha/shared_scripts/-/issues
|
|
# # License: https://gitlab.utu.fi/deecha/shared_scripts/-/blob/master/LICENSE
|
|
# #
|
|
# # PURPOSE:
|
|
# # For a given vector of amino acid changes like A123T, V256F, E746_A750del
|
|
# # this function returns c(123, 256, 746) as amino acid positions of
|
|
# # the mutated residue.
|
|
# # In case of indels, it doesn't return the range!! (returns only the start position)
|
|
# #
|
|
# #<---------------------------->
|
|
|
|
dependencies <- c("stringi")
|
|
missing_packages <- dependencies[!(dependencies %in% installed.packages()[, "Package"])]
|
|
if(length(missing_packages)) install.packages(missing_packages)
|
|
|
|
## ----- Legacy version relying on r::base --------
|
|
MutSiteFind.legacy=function(MutationColumn){
|
|
MutationSite=c()
|
|
for(i in seq(1:length(MutationColumn))){
|
|
Site=regmatches(MutationColumn[i], gregexpr("[[:digit:]]+",MutationColumn[i]))[[1]][1]
|
|
MutationSite=c(MutationSite,Site)
|
|
}
|
|
return(MutationSite)
|
|
}
|
|
|
|
|