883f7f27 |
#' log transform
#'
#' applies a log transform to the input data
#' @export log_transform
log_transform<-setClass(
"log_transform",
contains = c('method'),
slots=c(params.base='entity',
outputs.transformed='entity'
),
prototype=list(name = 'logarithm transform',
description = 'applies a log tranform to the data.',
type = 'transform',
predicted = 'transformed',
params=c('base'),
outputs=c('transformed'),
params.qc_label=entity(name = 'logarithm base',
description = 'The base of the logarithm used for the tranform.',
value = 10,
type='numeric'),
outputs.transformed=entity(name = 'log transformed dataset',
description = 'A dataset object containing the log transformed data.',
type='dataset',
value=dataset()
)
)
)
#' @export
setMethod(f="method.apply",
signature=c("log_transform","dataset"),
definition=function(M,D)
{
opt=param.list(M)
smeta=dataset.sample_meta(D)
x=dataset.data(D)
out = log(x,base = opt$base)
dataset.data(D) = as.data.frame(out)
output.value(M,'transformed') = D
return(M)
}
)
|