11# Cutadapt v0.1
22
3- Cutadapt <- function (files = " latest" , forward = NA , reverse = NA , bothsides = F , anchoring = T , fastq = T , LDist = F , cores = 1 , delete_data = T , ambsequ = F , error = 0.1 , exe = " cutadapt" , exeU = " usearch " ){
3+ Cutadapt <- function (files = " latest" , forward = NA , reverse = NA , bothsides = F , anchoring = T , LDist = F , cores = 1 , delete_data = T , ambsequ = F , error = 0.1 , exe = " cutadapt" , exe2 = " vsearch " , fastq = T ){
44
55# do checks
66FW_only <- F
77if (is.na(reverse [1 ])){FW_only <- T }
88
99
1010
11-
12-
13-
14-
15-
1611folder <- Core(module = " Cutadapt" , delete_data = delete_data )
1712cat(file = " log.txt" , c(" Module Version: v0.2" , " \n " ), append = T , sep = " \n " )
1813
@@ -39,6 +34,7 @@ if(!fastq){ #rename to fasta if fastq=F
3934new_names <- sub(" .fastq" , " .fasta" , new_names )
4035}
4136
37+
4238# get primer sequences / names
4339primers <- read.csv(paste(system.file(package = " JAMP" ), " /primers.csv" , sep = " " ), stringsAsFactors = F )
4440
@@ -86,15 +82,15 @@ rw[i] <- paste(rev(comp(unlist(strsplit(rw[i], "")), forceToLower=F, ambiguous=T
8682
8783# add: write down used primers in log!
8884if (FW_only ){
89- cmd1 <- paste(" -g " , if (anchoring ){" ^" }, fw , " -o \" " , new_names , " \" \" " , files , " \" " , " -f " , if ( fastq ){ " fastq " } else { " fasta " }, " - -discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # forward adapter
85+ cmd1 <- paste(" -g " , if (anchoring ){" ^" }, fw , " -o \" " , new_names , " \" \" " , files , " \" " , " --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # forward adapter
9086files_to_delete <- c(files_to_delete , new_names )
9187
9288temp <- paste(" Starting to remove adapters (primers) on forward direction only " , length(cmd1 ), " files:" , sep = " " )
9389cat(file = " log.txt" , temp , append = T , sep = " \n " )
9490message(temp )
9591}else {
96- cmd1 <- paste(" -g " , if (anchoring ){" ^" }, fw , " -o " , folder , " /_data/temp.txt \" " , files , " \" " , " -f " , if ( fastq ){ " fastq " } else { " fasta " }, " - -discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # forward adapter
97- cmd2 <- paste(" -a " , rw , if (anchoring ){" $" }," -o \" " , new_names , " \" " , folder , " /_data/temp.txt -f " , if ( fastq ){ " fastq " } else { " fasta " } , " --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # rverse adapter
92+ cmd1 <- paste(" -g " , if (anchoring ){" ^" }, fw , " -o " , folder , " /_data/temp.txt \" " , files , " \" " , " --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # forward adapter
93+ cmd2 <- paste(" -a " , rw , if (anchoring ){" $" }," -o \" " , new_names , " \" " , folder , " /_data/temp.txt " , " --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error , sep = " " ) # rverse adapter
9894files_to_delete <- c(files_to_delete , new_names )
9995
10096temp <- paste(" Starting to remove adapters (primers) on both ends in " , length(cmd1 ), " files:" , sep = " " )
@@ -129,28 +125,28 @@ cat(file=log_names[i], A, append=T, sep="\n")
129125# cat(file=log_names[i], A, append=T, sep="\n")
130126
131127# trimm RW
132- rev_primer <- paste(" -a " , rw [i ], if (anchoring ){" $" }," -o " , folder , " /_data/temp_A.txt " , folder , " /_data/temp.txt -f " , if ( fastq ){ " fastq " } else { " fasta " } , " --discard-untrimmed --cores=" , cores , sep = " " , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error ) # rverse adapter
128+ rev_primer <- paste(" -a " , rw [i ], if (anchoring ){" $" }," -o " , folder , " /_data/temp_A.txt " , folder , " /_data/temp.txt " , " --discard-untrimmed --cores=" , cores , sep = " " , if (ambsequ ){" --match-read-wildcards" }, " --error-rate " , error ) # rverse adapter
133129
134130A <- system2(exe , rev_primer , stdout = T , stderr = T )
135131cat(file = log_names [i ], A , append = T , sep = " \n " )
136132
137133# build revcomp
138134
139135revcom_cmd <- paste(" -fastx_revcomp " , files [i ], if (fastq ){" -fastqout " } else {" -fastaout " }, folder , " /_data/temp2_RC.txt -label_suffix _RC" , sep = " " )
140- A <- system2(exeU , revcom_cmd , stdout = T , stderr = T )
136+ A <- system2(exe2 , revcom_cmd , stdout = T , stderr = T )
141137
142- cat(file = log_names [i ], paste(" usearch " , revcom_cmd , sep = " " ), append = T , sep = " \n " )
138+ cat(file = log_names [i ], paste(exe2 , revcom_cmd , sep = " " ), append = T , sep = " \n " )
143139cat(file = log_names [i ], A , append = T , sep = " \n " )
144140
145141# cut primers again! simmillar commands
146142
147- fw_primer_cmd <- paste(" -g " , if (anchoring ){" ^" }, fw [i ], " -o " , folder , " /_data/temp.txt " , folder , " /_data/temp2_RC.txt" , " -f " , if ( fastq ){ " fastq " } else { " fasta " }, " - -discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, sep = " " , " --error-rate " , error ) # forward adapter
143+ fw_primer_cmd <- paste(" -g " , if (anchoring ){" ^" }, fw [i ], " -o " , folder , " /_data/temp.txt " , folder , " /_data/temp2_RC.txt" , " --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, sep = " " , " --error-rate " , error ) # forward adapter
148144
149145A <- system2(exe , fw_primer_cmd , stdout = T , stderr = T )
150146cat(file = log_names [i ], A , append = T , sep = " \n " )
151147
152148
153- rev_primer <- paste(" -a " , rw [i ], if (anchoring ){" $" }," -o " , folder , " /_data/temp_B.txt " , folder , " /_data/temp.txt -f " , if ( fastq ){ " fastq " } else { " fasta " }, " - -discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, sep = " " , " --error-rate " , error ) # rverse adapter
149+ rev_primer <- paste(" -a " , rw [i ], if (anchoring ){" $" }," -o " , folder , " /_data/temp_B.txt " , folder , " /_data/temp.txt --discard-untrimmed --cores=" , cores , if (ambsequ ){" --match-read-wildcards" }, sep = " " , " --error-rate " , error ) # rverse adapter
154150
155151A <- system2(exe , rev_primer , stdout = T , stderr = T )
156152cat(file = log_names [i ], A , append = T , sep = " \n " )
0 commit comments