view abims_hclustering.r @ 0:2f7381ee5235 draft

Uploaded
author lecorguille
date Tue, 30 Jun 2015 06:36:09 -0400
parents
children 36fc0a87d7fb
line wrap: on
line source

#!/usr/local/public/bin/Rscript --verbose
# version="1.1"

# date: 04-06-2013
# **Authors** Gildas Le Corguille  ABiMS - UPMC/CNRS - Station Biologique de Roscoff - gildas.lecorguille|at|sb-roscoff.fr 

# abims_hclust.r version 20130604

library(batch)
library(ctc)

hclust_metabolomics = function(file, method = "pearson", link = "ward", normalization=TRUE, keep.hclust=FALSE, sep=";", dec="."){

    if (sep=="tabulation") sep="\t"
    if (sep=="semicolon") sep=";"
    if (sep=="comma") sep=","

    # -- loading --
    data=read.table(file, header = TRUE, row.names=1, sep = sep, quote="\"", dec = dec,
		    fill = TRUE, comment.char="",na.strings = "NA")

    # -- Normalization: logratio --
    if (normalization) {
	#meandata = apply(data,1,mean, na.rm=T)
	#data = log2(data/meandata)
	data=t(scale(t(data)))
    }

    # -- hclust / output files for TreeView --
    file="hclust.cdt"
    hclust2treeview(data,file=file, method = method, link = link, keep.hclust= keep.hclust)
    
    # -- output / return --
    system("zip -r hclust.zip hclust.*", ignore.stdout = TRUE)
}

listArguments = parseCommandArgs(evaluate=FALSE)
do.call(hclust_metabolomics, listArguments)