R/convert_seq_amino.R

"convert_seq_amino" <-
function(x){

## Convert sequence into binary string

A <-c(1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
R <-c(0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
N <-c(0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
D <-c(0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
C <-c(0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
Q <-c(0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
E <-c(0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0)
G <-c(0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0)
H <-c(0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0)
I <-c(0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0)
L <-c(0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0)
K <-c(0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0)
M <-c(0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0)
F <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0)
P <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0)
S <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0)
T <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0)
W <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0)
Y <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0)
V <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1)
gap <-c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

z<-length(unlist(strsplit(x,split=NULL)))
ans<-vector()
for(i in 1:z){
	if((x[i]=="D")||(x[i]=="d")){
	    ans<-c(ans,D)}
	if((x[i]=="T")||(x[i]=="t")){
	    ans<-c(ans,T)}
	if((x[i]=="E")||(x[i]=="e")){
	    ans<-c(ans,E)}
	if((x[i]=="C")||(x[i]=="c")){
	    ans<-c(ans,C)}
	if((x[i]=="M")||(x[i]=="m")){
	    ans<-c(ans,M)}
	if((x[i]=="Y")||(x[i]=="y")){
	    ans<-c(ans,Y)}
	if((x[i]=="K")||(x[i]=="k")){
	    ans<-c(ans,K)}
	if((x[i]=="R")||(x[i]=="r")){
	    ans<-c(ans,R)}
	if((x[i]=="S")||(x[i]=="s")){
	    ans<-c(ans,S)}
	if((x[i]=="Q")||(x[i]=="q")){
	    ans<-c(ans,Q)}
	if((x[i]=="F")||(x[i]=="f")){
	    ans<-c(ans,F)}
	if((x[i]=="P")||(x[i]=="p")){
	    ans<-c(ans,P)}
	if((x[i]=="W")||(x[i]=="w")){
	    ans<-c(ans,W)}
	if((x[i]=="N")||(x[i]=="n")){
	    ans<-c(ans,N)}
	if((x[i]=="G")||(x[i]=="g")){
	    ans<-c(ans,G)}
	if((x[i]=="V")||(x[i]=="v")){
	    ans<-c(ans,V)}
	if((x[i]=="I")||(x[i]=="i")){
	    ans<-c(ans,I)}
	if((x[i]=="L")||(x[i]=="l")){
	    ans<-c(ans,L)}
	if((x[i]=="A")||(x[i]=="a")){
	    ans<-c(ans,A)}
	if((x[i]=="H")||(x[i]=="h")){
	    ans<-c(ans,H)}
	if(x[i]=="-"){
	    ans<-c(ans,gap)}
	if(x[i]=="."){
	    ans<-c(ans,gap)}
	if(x[i]=="X"){
	    ans<-c(ans,gap)}
	
	if(!length(ans)==20*i){
    	print(c("Error for position ",i, "in ",x))
	    return("ERROR")
	}
}  

         
return(ans)

}

Try the bgafun package in your browser

Any scripts or data that you put into this service are public.

bgafun documentation built on April 28, 2020, 7:56 p.m.