Mercurial > repos > marie-tremblay-metatoul > nmr_bucketing
comparison NmrBucketing_script.R @ 4:d61f6ceef5d6 draft
planemo upload for repository https://github.com/workflow4metabolomics/nmr_bucketing commit a0155b12acca444f72ff761fcce740e71be28a6d-dirty
author | lecorguille |
---|---|
date | Tue, 22 Nov 2016 05:22:03 -0500 |
parents | 58679e85745f |
children |
comparison
equal
deleted
inserted
replaced
3:58679e85745f | 4:d61f6ceef5d6 |
---|---|
3 # User : Galaxy # | 3 # User : Galaxy # |
4 # Original data : -- # | 4 # Original data : -- # |
5 # Starting date : 20-10-2014 # | 5 # Starting date : 20-10-2014 # |
6 # Version 1 : 18-12-2014 # | 6 # Version 1 : 18-12-2014 # |
7 # Version 2 : 07-01-2015 # | 7 # Version 2 : 07-01-2015 # |
8 # Version 3 : 24-10-2016 # | |
8 # # | 9 # # |
9 # Input files : files in included in user-defined directory # | 10 # Input files : modification on october 2016 # |
11 # - Raw bruker files included in user-defined fileName # | |
12 # - Preprocessed files (alignment, ...) included in p x n dataframe # | |
10 ################################################################################################ | 13 ################################################################################################ |
11 NmrBucketing <- function(directory,leftBorder = 10.0,rightBorder = 0.5,bucketSize = 0.04,exclusionZones,exclusionZonesBorders=NULL, | 14 NmrBucketing <- function(fileType,fileName,leftBorder = 10.0,rightBorder = 0.5,bucketSize = 0.04,exclusionZones, |
12 graph=c("None","Overlay","One_per_individual"),nomFichier,savLog.txtC = NULL) | 15 exclusionZonesBorders=NULL,graph=c("None","Overlay","One_per_individual"), |
16 nomFichier,savLog.txtC = NULL) | |
13 { | 17 { |
14 ## Option | 18 ## Option |
15 ##--------------- | 19 ##--------------- |
16 strAsFacL <- options()$stringsAsFactors | 20 strAsFacL <- options()$stringsAsFactors |
17 options(stingsAsFactors = FALSE) | 21 options(stingsAsFactors = FALSE) |
129 } | 133 } |
130 } | 134 } |
131 return(f.bucket) | 135 return(f.bucket) |
132 } | 136 } |
133 | 137 |
134 | |
135 # File names | |
136 FileNames <- list.files(directory) | |
137 n <- length(FileNames) | |
138 | |
139 # Exclusion zones | 138 # Exclusion zones |
140 ## if (exclusionZones == "yes") | |
141 if (!is.null(exclusionZonesBorders)) | 139 if (!is.null(exclusionZonesBorders)) |
142 { | 140 { |
143 exclusion.zone.m <- matrix(exclusionZonesBorders[[1]],nrow=1) | 141 exclusion.zone.m <- matrix(exclusionZonesBorders[[1]],nrow=1) |
144 if (length(exclusionZonesBorders) > 1) | 142 if (length(exclusionZonesBorders) > 1) |
145 for (k in 2:length(exclusionZonesBorders)) | 143 for (k in 2:length(exclusionZonesBorders)) |
146 exclusion.zone.m <- rbind(exclusion.zone.m,exclusionZonesBorders[[k]]) | 144 exclusion.zone.m <- rbind(exclusion.zone.m,exclusionZonesBorders[[k]]) |
147 } | 145 } |
148 | 146 |
149 # Reading and Bucketing | 147 ## CHANGES |
150 directory <- paste(directory,"/",sep="") | 148 ## Inputs from zip or library (raw files) |
151 | 149 if (fileType == "zip") |
152 i <- 1 | 150 { |
153 while (i <= n) | 151 # File names |
154 { | 152 FileNames <- list.files(fileName) |
155 # File reading | 153 n <- length(FileNames) |
156 SampleDir <- paste(directory,FileNames[i],"/1/",sep="") | 154 |
157 setwd(SampleDir) | 155 # Reading and Bucketing |
158 DataDir <- "pdata/1" | 156 fileName <- paste(fileName,"/",sep="") |
159 | 157 |
160 rawSpectrum <- NmRBrucker_read(DataDir,rawSpectrum) | 158 i <- 1 |
161 | 159 while (i <= n) |
162 orderedSpectrum <- rawSpectrum[order(rawSpectrum[,1],decreasing=T), ] | 160 { |
163 | 161 # File reading |
164 # Removal of chemical shifts > leftBorder or < rightBorder boundaries | 162 SampleDir <- paste(fileName,FileNames[i],"/1/",sep="") |
165 truncatedSpectrum <- orderedSpectrum[orderedSpectrum[,1] < leftBorder & orderedSpectrum[,1] > rightBorder, ] | 163 setwd(SampleDir) |
166 truncatedSpectrum[,1] <- round(truncatedSpectrum[,1],3) | 164 DataDir <- "pdata/1" |
167 | 165 |
168 # Bucketing | 166 rawSpectrum <- NmRBrucker_read(DataDir,rawSpectrum) |
169 spectrum.bucket <- NmrBrucker_bucket(truncatedSpectrum) | 167 |
170 | 168 orderedSpectrum <- rawSpectrum[order(rawSpectrum[,1],decreasing=T), ] |
171 # spectrum Concatenation | 169 |
172 if (i == 1) | 170 # Removal of chemical shifts > leftBorder or < rightBorder boundaries |
173 bucketedSpectra <- spectrum.bucket | 171 truncatedSpectrum <- orderedSpectrum[orderedSpectrum[,1] < leftBorder & orderedSpectrum[,1] > rightBorder, ] |
174 if (i > 1) | 172 truncatedSpectrum[,1] <- round(truncatedSpectrum[,1],3) |
175 bucketedSpectra <- cbind(bucketedSpectra,spectrum.bucket[,2]) | 173 |
176 colnames(bucketedSpectra)[i+1] <- FileNames[i] | 174 # Bucketing |
177 | 175 spectrum.bucket <- NmrBrucker_bucket(truncatedSpectrum) |
178 # Next sample | 176 |
179 rm(spectrum.bucket) | 177 # spectrum Concatenation |
180 i <- i +1 | 178 if (i == 1) |
181 } | 179 bucketedSpectra <- spectrum.bucket |
180 if (i > 1) | |
181 bucketedSpectra <- cbind(bucketedSpectra,spectrum.bucket[,2]) | |
182 colnames(bucketedSpectra)[i+1] <- FileNames[i] | |
183 | |
184 # Next sample | |
185 rm(spectrum.bucket) | |
186 i <- i +1 | |
187 } | |
188 # Directory | |
189 cd(fileName) | |
190 } | |
191 | |
192 ## Inputs from dataset (preprocessed files) | |
193 if (fileType=="tsv") | |
194 { | |
195 FileNames <- colnames(fileName) | |
196 n <- length(FileNames) | |
197 | |
198 for (i in 1:ncol(fileName)) | |
199 { | |
200 orderedSpectrum <- cbind(as.numeric(rownames(fileName)),fileName[,i]) | |
201 orderedSpectrum <- orderedSpectrum[order(orderedSpectrum[,1],decreasing=T), ] | |
202 | |
203 truncatedSpectrum <- orderedSpectrum[orderedSpectrum[,1] < leftBorder & orderedSpectrum[,1] > rightBorder, ] | |
204 truncatedSpectrum[,1] <- round(truncatedSpectrum[,1],3) | |
205 | |
206 # Bucketing | |
207 spectrum.bucket <- NmrBrucker_bucket(truncatedSpectrum) | |
208 | |
209 # spectrum Concatenation | |
210 if (i == 1) | |
211 bucketedSpectra <- spectrum.bucket | |
212 if (i > 1) | |
213 bucketedSpectra <- cbind(bucketedSpectra,spectrum.bucket[,2]) | |
214 colnames(bucketedSpectra)[i+1] <- colnames(fileName)[i] | |
215 } | |
216 } | |
217 | |
182 identifiants <- gsub("([- , * { } | \\[ ])","_",colnames(bucketedSpectra)[-1]) | 218 identifiants <- gsub("([- , * { } | \\[ ])","_",colnames(bucketedSpectra)[-1]) |
183 colnames(bucketedSpectra) <- c(colnames(bucketedSpectra)[1],identifiants) | 219 colnames(bucketedSpectra) <- c(colnames(bucketedSpectra)[1],identifiants) |
184 | 220 |
185 bucketedSpectra <- bucketedSpectra[bucketedSpectra[,1]!=0,] | 221 bucketedSpectra <- bucketedSpectra[bucketedSpectra[,1]!=0,] |
186 rownames(bucketedSpectra) <- paste("B",bucketedSpectra[,1],sep="") | 222 rownames(bucketedSpectra) <- paste("B",bucketedSpectra[,1],sep="") |
193 | 229 |
194 variableMetadata <- data.frame(1:nrow(bucketedSpectra)) | 230 variableMetadata <- data.frame(1:nrow(bucketedSpectra)) |
195 rownames(variableMetadata) <- rownames(bucketedSpectra) | 231 rownames(variableMetadata) <- rownames(bucketedSpectra) |
196 colnames(variableMetadata) <- "VariableOrder" | 232 colnames(variableMetadata) <- "VariableOrder" |
197 | 233 |
198 # Directory | |
199 cd(directory) | |
200 | |
201 # Bucketed spectra graph | 234 # Bucketed spectra graph |
202 if (graph != "None") | 235 if (graph != "None") |
203 { | 236 { |
204 # Graphic Device opening | 237 # Graphic Device opening |
205 pdf(nomFichier,onefile=TRUE) | 238 pdf(nomFichier,onefile=TRUE) |