Nothing
# File istdx.R
# Part of the hydroTSM R package, https://github.com/hzambran/hydroTSM ;
# https://CRAN.R-project.org/package=hydroTSM
# Copyright 2009-2017 Mauricio Zambrano-Bigiarini
# Distributed under GPL 2 or later
################################################################################
# 'istdx' #
################################################################################
# This function transforms back a standarized vector/matrix into their original#
# values, i.e., re-scales all the values in the [0,1] interval to the original #
# range of values #
# x = re-scale(z) = z*[ zmax - zmin ] + xmin #
################################################################################
# Author : Mauricio Zambrano-Bigiarini #
################################################################################
# Started: 19-Feb-2009 #
################################################################################
#
# 'z' : standarized vector or matriz to be re-scaled, all the values
# have to be in the range [0,1]
# 'xmin' : numeric with the minimum value(s) in the original 'x'
# -) if 'z' is a vector, 'xmin' has to be a real
# -) if 'z' is a matrix/data.frame, 'xmin' has to be a vector, with
# the minimum values for each column of the original 'x'
# in this case, the vector of minimums can be otained as:
# xmin <- apply(x,2,min, na.rm=TRUE)
# 'xrange' : numeric with the range of value(s) in the original 'x'
# -) if 'z' is a vector, 'xrange' has to be a real
# -) if 'z' is a matrix/data.frame, 'xrange' has to be a vector, with
# the range of values for each column of the original 'x'
# in this case, the vector of ranges can be otained as:
# xrange <- apply(x, 2, range, na.rm=TRUE)
# xrange <- apply(xrange,2, diff, na.rm=TRUE)
# 'result': re-scaled 'x', where all the values of each column of 'x'
# are within the original range of x values
istdx <-function(x,...) UseMethod("istdx")
istdx.default <- function(x, xmin, xrange,...) {
z <- x*xrange + xmin
names(z) <- names(x)
return(as.numeric(z))
} # 'istdx.default' end
istdx.matrix <- function(x, xmin, xrange,...) {
z <- matrix(data = NA, nrow = nrow(x), ncol = ncol(x))
z <- sapply(1:ncol(z), function(i) {
z[,i] <- istdx.default( x[,i], xmin[i], xrange[i] )
})
colnames(z) <- colnames(x)
rownames(z) <- rownames(x)
return(z)
} # 'istdx.matrix' end
istdx.data.frame <- function(x, xmin, xrange,...) {
x <- as.matrix(x)
NextMethod("istdx.matrix")
} # 'istdx.data.frame' end
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.