annotate merge.R @ 1:185b0aba7d8e draft default tip

Uploaded
author morinlab
date Sun, 04 Dec 2016 18:29:23 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
1 args <- commandArgs(trailingOnly = TRUE)
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
2
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
3 files <- read.table(args[1], stringsAsFactors=F)
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
4
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
5 my.read.table <- function(file) {
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
6 read.table(
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
7 file,
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
8 sep="\t",
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
9 stringsAsFactors=T,
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
10 header=as.logical(args[4])
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
11 )
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
12 }
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
13
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
14 data <- NA;
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
15 if (length(files) == 1) {
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
16 data <- my.read.table(files[1])
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
17 }
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
18 else {
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
19 data_list <- apply(files, 1, my.read.table)
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
20 data <- Reduce(function(x,y) { rbind(x,y) }, data_list)
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
21 }
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
22
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
23 contig_order <- read.table(args[2], stringsAsFactors=F)[,1]
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
24 data[,1] <- factor(data[,1], levels=contig_order)
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
25 data <- data[order(data[,1]),]
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
26 data[,1] <- as.character(data[,1])
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
27
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
28 write.table(
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
29 x=data,
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
30 file=args[3],
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
31 sep ="\t",
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
32 quote=F,
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
33 row.names=F,
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
34 col.names=as.logical(args[4])
185b0aba7d8e Uploaded
morinlab
parents:
diff changeset
35 )