annotate all stuff/Difference finder for GalaxyP july 2020.R @ 11:77e47268b650 draft default tip

Uploaded
author jfb
date Tue, 14 Jul 2020 19:53:34 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
77e47268b650 Uploaded
jfb
parents:
diff changeset
1 FirstSubstrateSet<- read.csv("S1.csv", stringsAsFactors=FALSE,colClasses = "character")
77e47268b650 Uploaded
jfb
parents:
diff changeset
2 Firstsubbackfreq<- read.csv("SBF1.csv", header=FALSE, stringsAsFactors=FALSE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
3 SecondSubstrateSet<- read.csv("S2.csv", stringsAsFactors=FALSE,colClasses = "character")
77e47268b650 Uploaded
jfb
parents:
diff changeset
4 Secondsubbackfreq<- read.csv("SBF2.csv", header=FALSE, stringsAsFactors=FALSE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
5 #this brings in the input files
77e47268b650 Uploaded
jfb
parents:
diff changeset
6
77e47268b650 Uploaded
jfb
parents:
diff changeset
7
77e47268b650 Uploaded
jfb
parents:
diff changeset
8 First_unshared_motifs_table<-"1RS.csv"
77e47268b650 Uploaded
jfb
parents:
diff changeset
9 First_unshared_subbackfreq<-"1RSBF.csv"
77e47268b650 Uploaded
jfb
parents:
diff changeset
10 Second_unshared_motifs_table<-"2RS.csv"
77e47268b650 Uploaded
jfb
parents:
diff changeset
11 Second_unshared_subbackfreq<-"2RSBF.csv"
77e47268b650 Uploaded
jfb
parents:
diff changeset
12 #this names the output files
77e47268b650 Uploaded
jfb
parents:
diff changeset
13
77e47268b650 Uploaded
jfb
parents:
diff changeset
14 EmptySubHeader<-colnames(FirstSubstrateSet)
77e47268b650 Uploaded
jfb
parents:
diff changeset
15 EmptySubHeader<-matrix(EmptySubHeader, nrow=1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
16 EmptySBFHeader<-Firstsubbackfreq[,1]
77e47268b650 Uploaded
jfb
parents:
diff changeset
17 #this creates the headers which comes from the input files, so that the output files can be given this header so that they will look identical to the input files
77e47268b650 Uploaded
jfb
parents:
diff changeset
18
77e47268b650 Uploaded
jfb
parents:
diff changeset
19
77e47268b650 Uploaded
jfb
parents:
diff changeset
20 #the below code is used to ensure that all phospho-amino acids get marked with an "x" to denote their phosphoness
77e47268b650 Uploaded
jfb
parents:
diff changeset
21 FirstCentralLetters<-FirstSubstrateSet[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
22 SecondCentralLetters<-SecondSubstrateSet[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
23 #the phospho AAs are always found in position 12, so take them from there
77e47268b650 Uploaded
jfb
parents:
diff changeset
24
77e47268b650 Uploaded
jfb
parents:
diff changeset
25 FirstEsses<-sapply(FirstCentralLetters, grepl, pattern="S", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
26 FirstTees<-sapply(FirstCentralLetters, grepl, pattern="T", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
27 FirstWys<-sapply(FirstCentralLetters, grepl, pattern="Y", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
28 #use an 3 apply functions to create vectors, these vetors have true values where they find an S, T or Y.
77e47268b650 Uploaded
jfb
parents:
diff changeset
29 #so FirstEsses has a True anywhere it sees an S, and FirstTees has a True anywhere it sees a Y
77e47268b650 Uploaded
jfb
parents:
diff changeset
30
77e47268b650 Uploaded
jfb
parents:
diff changeset
31 SecondEsses<-sapply(SecondCentralLetters, grepl, pattern="S", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
32 SecondTees<-sapply(SecondCentralLetters, grepl, pattern="T", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
33 SecondWys<-sapply(SecondCentralLetters, grepl, pattern="Y", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
34 #do the same for the second substrate set's central letters
77e47268b650 Uploaded
jfb
parents:
diff changeset
35
77e47268b650 Uploaded
jfb
parents:
diff changeset
36 FirstCentralLetters<-replace(FirstCentralLetters,FirstEsses,"xS")
77e47268b650 Uploaded
jfb
parents:
diff changeset
37 FirstCentralLetters<-replace(FirstCentralLetters,FirstTees,"xT")
77e47268b650 Uploaded
jfb
parents:
diff changeset
38 FirstCentralLetters<-replace(FirstCentralLetters,FirstWys,"xY")
77e47268b650 Uploaded
jfb
parents:
diff changeset
39 #where there is a True value in FirstEsses, replace that value in the original substrate set with an xS. This is because there was originally an S in that
77e47268b650 Uploaded
jfb
parents:
diff changeset
40 #position, and I want that S to be marked with an x, denoting phospho
77e47268b650 Uploaded
jfb
parents:
diff changeset
41
77e47268b650 Uploaded
jfb
parents:
diff changeset
42 SecondCentralLetters<-replace(SecondCentralLetters,SecondEsses,"xS")
77e47268b650 Uploaded
jfb
parents:
diff changeset
43 SecondCentralLetters<-replace(SecondCentralLetters,SecondTees,"xT")
77e47268b650 Uploaded
jfb
parents:
diff changeset
44 SecondCentralLetters<-replace(SecondCentralLetters,SecondWys,"xY")
77e47268b650 Uploaded
jfb
parents:
diff changeset
45
77e47268b650 Uploaded
jfb
parents:
diff changeset
46 FirstCentralLetters->FirstSubstrateSet[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
47 SecondCentralLetters->SecondSubstrateSet[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
48 #then I put these x-marked letters back where I found them, in position 11 of the substrate sets
77e47268b650 Uploaded
jfb
parents:
diff changeset
49
77e47268b650 Uploaded
jfb
parents:
diff changeset
50 FTLwtmotifs=matrix(,nrow = nrow(FirstSubstrateSet),ncol=1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
51 FTLwtAccessionNumbers=matrix(,nrow = nrow(FirstSubstrateSet),ncol=1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
52
77e47268b650 Uploaded
jfb
parents:
diff changeset
53 for (i in 1:nrow(FirstSubstrateSet)){
77e47268b650 Uploaded
jfb
parents:
diff changeset
54 FTLwtletters<-FirstSubstrateSet[i,4:18]
77e47268b650 Uploaded
jfb
parents:
diff changeset
55 FTLwtletters<-FTLwtletters[FTLwtletters !="XXXXX"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
56 FTLwtletters<-paste(FTLwtletters, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
57 leftspaces<-c()
77e47268b650 Uploaded
jfb
parents:
diff changeset
58 rightspaces<-c()
77e47268b650 Uploaded
jfb
parents:
diff changeset
59
77e47268b650 Uploaded
jfb
parents:
diff changeset
60 YYYmotif <- unlist(strsplit(FTLwtletters, split = ""))
77e47268b650 Uploaded
jfb
parents:
diff changeset
61 YYYposition <- match(x = "x", table = YYYmotif)
77e47268b650 Uploaded
jfb
parents:
diff changeset
62 #position itself tells me how much is to the left of that X by what it's number is. x at position 4 tells me that there are
77e47268b650 Uploaded
jfb
parents:
diff changeset
63 #just 3 letters to the left of x
77e47268b650 Uploaded
jfb
parents:
diff changeset
64
77e47268b650 Uploaded
jfb
parents:
diff changeset
65 YYYLettersToTheLeft <- YYYposition - 1
77e47268b650 Uploaded
jfb
parents:
diff changeset
66 #how many letters to the right SHOULD just be length(motif)-position-1 if it's 5 long and x is at 3 then Y is at 4 and there is
77e47268b650 Uploaded
jfb
parents:
diff changeset
67 #just 1 spot to the right of Y so LettersToTheRight<-1 because 5-3-1=1
77e47268b650 Uploaded
jfb
parents:
diff changeset
68 YYYLettersToTheRight <- length(YYYmotif) - YYYposition - 1
77e47268b650 Uploaded
jfb
parents:
diff changeset
69 #then sanity check, we're currently looking only at +/-4, but this spot allows for up to +/- 7 as well, just depends on what the
77e47268b650 Uploaded
jfb
parents:
diff changeset
70 #variable the user puts in is
77e47268b650 Uploaded
jfb
parents:
diff changeset
71
77e47268b650 Uploaded
jfb
parents:
diff changeset
72
77e47268b650 Uploaded
jfb
parents:
diff changeset
73 if (YYYLettersToTheLeft < 7 | YYYLettersToTheRight < 7) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
74 leftspaces<-rep(" ",times=(7-YYYLettersToTheLeft))
77e47268b650 Uploaded
jfb
parents:
diff changeset
75 rightspaces<-rep(" ",times=7-(YYYLettersToTheRight))
77e47268b650 Uploaded
jfb
parents:
diff changeset
76 #add blank spaces if the motif has less than 4 letters to the left/right
77e47268b650 Uploaded
jfb
parents:
diff changeset
77 motif<-c(leftspaces,YYYmotif,rightspaces)
77e47268b650 Uploaded
jfb
parents:
diff changeset
78 #save that motif, which is the Y and +/- 4 amino acids, including truncation
77e47268b650 Uploaded
jfb
parents:
diff changeset
79 motif<-motif[!motif %in% "x"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
80 motif<-paste(motif, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
81 FTLwtletters<-motif
77e47268b650 Uploaded
jfb
parents:
diff changeset
82 FTLwtmotifs[i,1]<-FTLwtletters
77e47268b650 Uploaded
jfb
parents:
diff changeset
83 FTLwtAccessionNumbers[i,1]<-FirstSubstrateSet[i,3]
77e47268b650 Uploaded
jfb
parents:
diff changeset
84 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
85
77e47268b650 Uploaded
jfb
parents:
diff changeset
86 if(YYYLettersToTheLeft>6 && YYYLettersToTheRight>6){
77e47268b650 Uploaded
jfb
parents:
diff changeset
87 motif<-YYYmotif
77e47268b650 Uploaded
jfb
parents:
diff changeset
88 #add blank spaces if the motif has less than 4 letters to the left/right
77e47268b650 Uploaded
jfb
parents:
diff changeset
89 motif<-c(leftspaces,YYYmotif,rightspaces)
77e47268b650 Uploaded
jfb
parents:
diff changeset
90 #save that motif, which is the Y and +/- 4 amino acids, including truncation
77e47268b650 Uploaded
jfb
parents:
diff changeset
91 motif<-motif[!motif %in% "x"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
92 motif<-paste(motif, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
93 FTLwtletters<-motif
77e47268b650 Uploaded
jfb
parents:
diff changeset
94 FTLwtmotifs[i,1]<-FTLwtletters
77e47268b650 Uploaded
jfb
parents:
diff changeset
95 FTLwtAccessionNumbers[i,1]<-FirstSubstrateSet[i,3]
77e47268b650 Uploaded
jfb
parents:
diff changeset
96
77e47268b650 Uploaded
jfb
parents:
diff changeset
97
77e47268b650 Uploaded
jfb
parents:
diff changeset
98 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
99
77e47268b650 Uploaded
jfb
parents:
diff changeset
100 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
101
77e47268b650 Uploaded
jfb
parents:
diff changeset
102 D835Ymotifs=matrix(,nrow = nrow(SecondSubstrateSet),ncol=1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
103 D835YAccessionNumbers<-matrix(,nrow = nrow(SecondSubstrateSet),ncol = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
104
77e47268b650 Uploaded
jfb
parents:
diff changeset
105 for (i in 1:nrow(SecondSubstrateSet)){
77e47268b650 Uploaded
jfb
parents:
diff changeset
106 D835letters<-SecondSubstrateSet[i,4:18]
77e47268b650 Uploaded
jfb
parents:
diff changeset
107 D835letters<-D835letters[D835letters !="XXXXX"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
108 D835letters<-paste(D835letters, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
109 leftspaces<-c()
77e47268b650 Uploaded
jfb
parents:
diff changeset
110 rightspaces<-c()
77e47268b650 Uploaded
jfb
parents:
diff changeset
111
77e47268b650 Uploaded
jfb
parents:
diff changeset
112 YYYmotif <- unlist(strsplit(D835letters, split = ""))
77e47268b650 Uploaded
jfb
parents:
diff changeset
113 YYYposition <- match(x = "x", table = YYYmotif)
77e47268b650 Uploaded
jfb
parents:
diff changeset
114 #position itself tells me how much is to the left of that X by what it's number is. x at position 4 tells me that there are
77e47268b650 Uploaded
jfb
parents:
diff changeset
115 #just 3 letters to the left of x
77e47268b650 Uploaded
jfb
parents:
diff changeset
116
77e47268b650 Uploaded
jfb
parents:
diff changeset
117 YYYLettersToTheLeft <- YYYposition - 1
77e47268b650 Uploaded
jfb
parents:
diff changeset
118 #how many letters to the right SHOULD just be length(motif)-position-1 if it's 5 long and x is at 3 then Y is at 4 and there is
77e47268b650 Uploaded
jfb
parents:
diff changeset
119 #just 1 spot to the right of Y so LettersToTheRight<-1 because 5-3-1=1
77e47268b650 Uploaded
jfb
parents:
diff changeset
120 YYYLettersToTheRight <- length(YYYmotif) - YYYposition - 1
77e47268b650 Uploaded
jfb
parents:
diff changeset
121 #then sanity check, we're currently looking only at +/-4, but this spot allows for up to +/- 7 as well, just depends on what the
77e47268b650 Uploaded
jfb
parents:
diff changeset
122 #variable the user puts in is
77e47268b650 Uploaded
jfb
parents:
diff changeset
123 if (YYYLettersToTheLeft < 7 | YYYLettersToTheRight < 7) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
124 leftspaces<-rep(" ",times=(7-YYYLettersToTheLeft))
77e47268b650 Uploaded
jfb
parents:
diff changeset
125 rightspaces<-rep(" ",times=7-(YYYLettersToTheRight))
77e47268b650 Uploaded
jfb
parents:
diff changeset
126 #add blank spaces if the motif has less than 4 letters to the left/right
77e47268b650 Uploaded
jfb
parents:
diff changeset
127 motif<-c(leftspaces,YYYmotif,rightspaces)
77e47268b650 Uploaded
jfb
parents:
diff changeset
128 #save that motif, which is the Y and +/- 4 amino acids, including truncation
77e47268b650 Uploaded
jfb
parents:
diff changeset
129 motif<-motif[!motif %in% "x"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
130 motif<-paste(motif, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
131 D835letters<-motif
77e47268b650 Uploaded
jfb
parents:
diff changeset
132 D835Ymotifs[i,1]<-D835letters
77e47268b650 Uploaded
jfb
parents:
diff changeset
133 D835YAccessionNumbers[i,1]<-SecondSubstrateSet[i,3]
77e47268b650 Uploaded
jfb
parents:
diff changeset
134 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
135
77e47268b650 Uploaded
jfb
parents:
diff changeset
136 if(YYYLettersToTheLeft>6 && YYYLettersToTheRight>6){
77e47268b650 Uploaded
jfb
parents:
diff changeset
137 motif<-YYYmotif
77e47268b650 Uploaded
jfb
parents:
diff changeset
138 #add blank spaces if the motif has less than 4 letters to the left/right
77e47268b650 Uploaded
jfb
parents:
diff changeset
139 motif<-c(leftspaces,YYYmotif,rightspaces)
77e47268b650 Uploaded
jfb
parents:
diff changeset
140 #save that motif, which is the Y and +/- 4 amino acids, including truncation
77e47268b650 Uploaded
jfb
parents:
diff changeset
141 motif<-motif[!motif %in% "x"]
77e47268b650 Uploaded
jfb
parents:
diff changeset
142 motif<-paste(motif, sep="", collapse="")
77e47268b650 Uploaded
jfb
parents:
diff changeset
143 D835letters<-motif
77e47268b650 Uploaded
jfb
parents:
diff changeset
144 D835Ymotifs[i,1]<-D835letters
77e47268b650 Uploaded
jfb
parents:
diff changeset
145 D835YAccessionNumbers[i,1]<-SecondSubstrateSet[i,3]
77e47268b650 Uploaded
jfb
parents:
diff changeset
146 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
147 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
148
77e47268b650 Uploaded
jfb
parents:
diff changeset
149 names(FTLwtmotifs)<-FTLwtAccessionNumbers
77e47268b650 Uploaded
jfb
parents:
diff changeset
150 names(D835Ymotifs)<-D835YAccessionNumbers
77e47268b650 Uploaded
jfb
parents:
diff changeset
151
77e47268b650 Uploaded
jfb
parents:
diff changeset
152
77e47268b650 Uploaded
jfb
parents:
diff changeset
153 FTLwtmotifsFINAL<-FTLwtmotifs[!FTLwtmotifs %in% D835Ymotifs]
77e47268b650 Uploaded
jfb
parents:
diff changeset
154 FTLwtmotifsFINAL<-FTLwtmotifsFINAL[!duplicated(FTLwtmotifsFINAL)]
77e47268b650 Uploaded
jfb
parents:
diff changeset
155
77e47268b650 Uploaded
jfb
parents:
diff changeset
156 D835YmotifsFINAL<-D835Ymotifs[!D835Ymotifs %in% FTLwtmotifs]
77e47268b650 Uploaded
jfb
parents:
diff changeset
157 D835YmotifsFINAL<-D835YmotifsFINAL[!duplicated(D835YmotifsFINAL)]
77e47268b650 Uploaded
jfb
parents:
diff changeset
158
77e47268b650 Uploaded
jfb
parents:
diff changeset
159
77e47268b650 Uploaded
jfb
parents:
diff changeset
160 columnalheader<-c(rep(NA,36))
77e47268b650 Uploaded
jfb
parents:
diff changeset
161 FTLFinalMatrix<-matrix(data =columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
162
77e47268b650 Uploaded
jfb
parents:
diff changeset
163 FLTheader<-c("Substrate","Species","Reference","-7","-6","-5","-4","-3","-2","-1","0","1","2","3","4","5","6","7","Phosphite")
77e47268b650 Uploaded
jfb
parents:
diff changeset
164
77e47268b650 Uploaded
jfb
parents:
diff changeset
165 if (length(FTLwtmotifsFINAL)>0){
77e47268b650 Uploaded
jfb
parents:
diff changeset
166 for (k in 1:length(FTLwtmotifsFINAL)) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
167 AN<-00000
77e47268b650 Uploaded
jfb
parents:
diff changeset
168 #it is necessary to destroy the accession number multiple times to ensure it is
77e47268b650 Uploaded
jfb
parents:
diff changeset
169 #destroyed immediately after use
77e47268b650 Uploaded
jfb
parents:
diff changeset
170 for (m in 1:ncol(Firstsubbackfreq)) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
171 AN <- as.character(Firstsubbackfreq[1, m])
77e47268b650 Uploaded
jfb
parents:
diff changeset
172 if (grepl(pattern = AN,
77e47268b650 Uploaded
jfb
parents:
diff changeset
173 x = names(FTLwtmotifsFINAL[k]),
77e47268b650 Uploaded
jfb
parents:
diff changeset
174 fixed = TRUE) == TRUE) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
175 outputmatrix <- as.character(Firstsubbackfreq[, m])
77e47268b650 Uploaded
jfb
parents:
diff changeset
176 outputmatrix <- matrix(outputmatrix, nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
177 #with that accession number, find a match in the subbackfreq file and save it here
77e47268b650 Uploaded
jfb
parents:
diff changeset
178 FTLFinalMatrix<-rbind(FTLFinalMatrix,outputmatrix)
77e47268b650 Uploaded
jfb
parents:
diff changeset
179 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
180 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
181 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
182 FTLFinalMatrix<-FTLFinalMatrix[!duplicated(FTLFinalMatrix),]
77e47268b650 Uploaded
jfb
parents:
diff changeset
183 FTLFinalMatrix<-FTLFinalMatrix[2:nrow(FTLFinalMatrix),]
77e47268b650 Uploaded
jfb
parents:
diff changeset
184
77e47268b650 Uploaded
jfb
parents:
diff changeset
185
77e47268b650 Uploaded
jfb
parents:
diff changeset
186 FTLoutputmatrix<-matrix(data=c(FTLwtmotifsFINAL,names(FTLwtmotifsFINAL)),ncol = 2)
77e47268b650 Uploaded
jfb
parents:
diff changeset
187 # FLTheader<-unlist(FLTheader)
77e47268b650 Uploaded
jfb
parents:
diff changeset
188 lefthandFLT<-matrix(data = rep(NA,times=2*nrow(FTLoutputmatrix)),nrow=nrow(FTLoutputmatrix))
77e47268b650 Uploaded
jfb
parents:
diff changeset
189 righthandFLT<-matrix(data = rep(NA,times=1*nrow(FTLoutputmatrix)),nrow=nrow(FTLoutputmatrix))
77e47268b650 Uploaded
jfb
parents:
diff changeset
190 FLTaccessionset<-FTLoutputmatrix[,2]
77e47268b650 Uploaded
jfb
parents:
diff changeset
191 FTLmeat<-sapply(FTLoutputmatrix[,1], strsplit, "")
77e47268b650 Uploaded
jfb
parents:
diff changeset
192 FTLmeat<-sapply(FTLmeat, unlist)
77e47268b650 Uploaded
jfb
parents:
diff changeset
193 colnames(FTLmeat)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
194 FTLmeat<-t(FTLmeat)
77e47268b650 Uploaded
jfb
parents:
diff changeset
195
77e47268b650 Uploaded
jfb
parents:
diff changeset
196 FTLoutputmatrix2<-cbind(lefthandFLT,FLTaccessionset,FTLmeat,righthandFLT)
77e47268b650 Uploaded
jfb
parents:
diff changeset
197 colnames(FTLoutputmatrix2)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
198 rownames(FTLoutputmatrix2)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
199 colnames(FLTheader)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
200 rownames(FLTheader)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
201
77e47268b650 Uploaded
jfb
parents:
diff changeset
202
77e47268b650 Uploaded
jfb
parents:
diff changeset
203 FirstCentralLettersAGAIN<-FTLoutputmatrix2[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
204
77e47268b650 Uploaded
jfb
parents:
diff changeset
205 FirstEsses<-sapply(FirstCentralLettersAGAIN, grepl, pattern="S", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
206 FirstTees<-sapply(FirstCentralLettersAGAIN, grepl, pattern="T", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
207 FirstWys<-sapply(FirstCentralLettersAGAIN, grepl, pattern="Y", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
208
77e47268b650 Uploaded
jfb
parents:
diff changeset
209 FirstCentralLettersAGAIN<-replace(FirstCentralLettersAGAIN,FirstEsses,"xS")
77e47268b650 Uploaded
jfb
parents:
diff changeset
210 FirstCentralLettersAGAIN<-replace(FirstCentralLettersAGAIN,FirstTees,"xT")
77e47268b650 Uploaded
jfb
parents:
diff changeset
211 FirstCentralLettersAGAIN<-replace(FirstCentralLettersAGAIN,FirstWys,"xY")
77e47268b650 Uploaded
jfb
parents:
diff changeset
212
77e47268b650 Uploaded
jfb
parents:
diff changeset
213 FirstCentralLettersAGAIN->FTLoutputmatrix2[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
214
77e47268b650 Uploaded
jfb
parents:
diff changeset
215 FTLoutputmatrix2<-rbind(FLTheader,FTLoutputmatrix2)
77e47268b650 Uploaded
jfb
parents:
diff changeset
216
77e47268b650 Uploaded
jfb
parents:
diff changeset
217 write.table(x=FTLoutputmatrix2,
77e47268b650 Uploaded
jfb
parents:
diff changeset
218 file=First_unshared_motifs_table,
77e47268b650 Uploaded
jfb
parents:
diff changeset
219 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
220 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
221
77e47268b650 Uploaded
jfb
parents:
diff changeset
222 columnalheader<-c(as.character(Firstsubbackfreq[1:36,1]))
77e47268b650 Uploaded
jfb
parents:
diff changeset
223 columnalheader<-matrix(columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
224 write.table(x=columnalheader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
225 file=First_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
226 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
227 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
228
77e47268b650 Uploaded
jfb
parents:
diff changeset
229 write.table(x=FTLFinalMatrix,
77e47268b650 Uploaded
jfb
parents:
diff changeset
230 file=First_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
231 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
232 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
233 } else{
77e47268b650 Uploaded
jfb
parents:
diff changeset
234 FTLFinalMatrix<-columnalheader
77e47268b650 Uploaded
jfb
parents:
diff changeset
235 write.table(x=EmptySubHeader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
236 file=First_unshared_motifs_table,
77e47268b650 Uploaded
jfb
parents:
diff changeset
237 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
238 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
239
77e47268b650 Uploaded
jfb
parents:
diff changeset
240 columnalheader<-c(as.character(Firstsubbackfreq[1:36,1]))
77e47268b650 Uploaded
jfb
parents:
diff changeset
241 columnalheader<-matrix(columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
242 write.table(x=columnalheader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
243 file=First_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
244 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
245 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
246 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
247
77e47268b650 Uploaded
jfb
parents:
diff changeset
248
77e47268b650 Uploaded
jfb
parents:
diff changeset
249 columnalheader<-c(rep(NA,36))
77e47268b650 Uploaded
jfb
parents:
diff changeset
250 D835YFinalMatrix<-matrix(data =columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
251
77e47268b650 Uploaded
jfb
parents:
diff changeset
252 if (length(D835YmotifsFINAL)>0){
77e47268b650 Uploaded
jfb
parents:
diff changeset
253 for (k in 1:length(D835YmotifsFINAL)) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
254 #it is necessary to destroy the accession number multiple times to ensure it is
77e47268b650 Uploaded
jfb
parents:
diff changeset
255 #destroyed immediately after use
77e47268b650 Uploaded
jfb
parents:
diff changeset
256 for (m in 1:ncol(Secondsubbackfreq)) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
257 AN <- as.character(Secondsubbackfreq[1, m])
77e47268b650 Uploaded
jfb
parents:
diff changeset
258 if (grepl(pattern = AN,
77e47268b650 Uploaded
jfb
parents:
diff changeset
259 x = names(D835YmotifsFINAL[k]),
77e47268b650 Uploaded
jfb
parents:
diff changeset
260 fixed = TRUE) == TRUE) {
77e47268b650 Uploaded
jfb
parents:
diff changeset
261 outputmatrix <- as.character(Secondsubbackfreq[, m])
77e47268b650 Uploaded
jfb
parents:
diff changeset
262 outputmatrix <- matrix(outputmatrix, nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
263 #with that accession number, find a match in the subbackfreq file and save it here
77e47268b650 Uploaded
jfb
parents:
diff changeset
264 D835YFinalMatrix<-rbind(D835YFinalMatrix,outputmatrix)
77e47268b650 Uploaded
jfb
parents:
diff changeset
265 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
266 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
267 }
77e47268b650 Uploaded
jfb
parents:
diff changeset
268 D835YFinalMatrix<-D835YFinalMatrix[!duplicated(D835YFinalMatrix),]
77e47268b650 Uploaded
jfb
parents:
diff changeset
269 D835YFinalMatrix<-D835YFinalMatrix[2:nrow(D835YFinalMatrix),]
77e47268b650 Uploaded
jfb
parents:
diff changeset
270
77e47268b650 Uploaded
jfb
parents:
diff changeset
271 D835Youtputmatrix<-matrix(data=c(D835YmotifsFINAL,names(D835YmotifsFINAL)),ncol = 2)
77e47268b650 Uploaded
jfb
parents:
diff changeset
272
77e47268b650 Uploaded
jfb
parents:
diff changeset
273 D835Yheader<-c("Substrate","Species","Reference","-7","-6","-5","-4","-3","-2","-1","0","1","2","3","4","5","6","7","Phosphite")
77e47268b650 Uploaded
jfb
parents:
diff changeset
274 # D835Yheader<-unlist(D835Yheader)
77e47268b650 Uploaded
jfb
parents:
diff changeset
275 lefthandD835<-matrix(data = rep(NA,times=2*nrow(D835Youtputmatrix)),nrow=nrow(D835Youtputmatrix))
77e47268b650 Uploaded
jfb
parents:
diff changeset
276 righthandD835<-matrix(data = rep(NA,times=1*nrow(D835Youtputmatrix)),nrow=nrow(D835Youtputmatrix))
77e47268b650 Uploaded
jfb
parents:
diff changeset
277 D835Yaset<-D835Youtputmatrix[,2]
77e47268b650 Uploaded
jfb
parents:
diff changeset
278 D835meat<-sapply(D835Youtputmatrix[,1], strsplit, "")
77e47268b650 Uploaded
jfb
parents:
diff changeset
279 D835meat<-sapply(D835meat, unlist)
77e47268b650 Uploaded
jfb
parents:
diff changeset
280 colnames(D835meat)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
281 D835meat<-t(D835meat)
77e47268b650 Uploaded
jfb
parents:
diff changeset
282
77e47268b650 Uploaded
jfb
parents:
diff changeset
283 D835Youtputmatrix2<-cbind(lefthandD835,D835Yaset,D835meat,righthandD835)
77e47268b650 Uploaded
jfb
parents:
diff changeset
284 colnames(D835Youtputmatrix2)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
285 rownames(D835Youtputmatrix2)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
286 colnames(D835Yheader)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
287 rownames(D835Yheader)<-NULL
77e47268b650 Uploaded
jfb
parents:
diff changeset
288
77e47268b650 Uploaded
jfb
parents:
diff changeset
289
77e47268b650 Uploaded
jfb
parents:
diff changeset
290 SecondCentralLettersAGAIN<-D835Youtputmatrix2[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
291
77e47268b650 Uploaded
jfb
parents:
diff changeset
292 SecondEsses<-sapply(SecondCentralLettersAGAIN, grepl, pattern="S", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
293 SecondTees<-sapply(SecondCentralLettersAGAIN, grepl, pattern="T", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
294 SecondWys<-sapply(SecondCentralLettersAGAIN, grepl, pattern="Y", ignore.case=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
295
77e47268b650 Uploaded
jfb
parents:
diff changeset
296 SecondCentralLettersAGAIN<-replace(SecondCentralLettersAGAIN,SecondEsses,"xS")
77e47268b650 Uploaded
jfb
parents:
diff changeset
297 SecondCentralLettersAGAIN<-replace(SecondCentralLettersAGAIN,SecondTees,"xT")
77e47268b650 Uploaded
jfb
parents:
diff changeset
298 SecondCentralLettersAGAIN<-replace(SecondCentralLettersAGAIN,SecondWys,"xY")
77e47268b650 Uploaded
jfb
parents:
diff changeset
299
77e47268b650 Uploaded
jfb
parents:
diff changeset
300 SecondCentralLettersAGAIN->D835Youtputmatrix2[,11]
77e47268b650 Uploaded
jfb
parents:
diff changeset
301
77e47268b650 Uploaded
jfb
parents:
diff changeset
302 D835Youtputmatrix2<-rbind(D835Yheader,D835Youtputmatrix2)
77e47268b650 Uploaded
jfb
parents:
diff changeset
303
77e47268b650 Uploaded
jfb
parents:
diff changeset
304 write.table(x=D835Youtputmatrix2,
77e47268b650 Uploaded
jfb
parents:
diff changeset
305 file=Second_unshared_motifs_table,
77e47268b650 Uploaded
jfb
parents:
diff changeset
306 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
307 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
308
77e47268b650 Uploaded
jfb
parents:
diff changeset
309 columnalheader<-c(as.character(Firstsubbackfreq[1:36,1]))
77e47268b650 Uploaded
jfb
parents:
diff changeset
310 columnalheader<-matrix(columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
311 write.table(x=columnalheader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
312 file=Second_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
313 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
314 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
315
77e47268b650 Uploaded
jfb
parents:
diff changeset
316 write.table(x=D835YFinalMatrix,
77e47268b650 Uploaded
jfb
parents:
diff changeset
317 file=Second_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
318 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
319 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
320 } else {
77e47268b650 Uploaded
jfb
parents:
diff changeset
321 D835YFinalMatrix<- columnalheader
77e47268b650 Uploaded
jfb
parents:
diff changeset
322 write.table(x=EmptySubHeader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
323 file=Second_unshared_motifs_table,
77e47268b650 Uploaded
jfb
parents:
diff changeset
324 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
325 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
326
77e47268b650 Uploaded
jfb
parents:
diff changeset
327 columnalheader<-c(as.character(Firstsubbackfreq[1:36,1]))
77e47268b650 Uploaded
jfb
parents:
diff changeset
328 columnalheader<-matrix(columnalheader,nrow = 1)
77e47268b650 Uploaded
jfb
parents:
diff changeset
329 write.table(x=columnalheader,
77e47268b650 Uploaded
jfb
parents:
diff changeset
330 file=Second_unshared_subbackfreq,
77e47268b650 Uploaded
jfb
parents:
diff changeset
331 quote=FALSE, sep=",",
77e47268b650 Uploaded
jfb
parents:
diff changeset
332 row.names=FALSE,col.names = FALSE, na="", append=TRUE)
77e47268b650 Uploaded
jfb
parents:
diff changeset
333 }