rank_transform_distr: Rank transformation based on a distribution function

Description Usage Arguments Value Author(s) Examples

View source: R/rank_transform_distr_function.R

Description

Rank transform a dataset, i.e., for each input value provide an output value from a given probability distribution, with the order of values (ranks) being preserved.

Usage

1
rank_transform_distr(x, distr = "norm", ...)

Arguments

x

Input vector

distr

Character naming output distribution function (e.g. "norm", "lnorm", "unif", "exp", "gamma",...). Use "trunc" for truncated distributions as provided by the truncdist package. See examples below for parameter settings.

...

Distribution parameters (see examples below)

Value

Vector of transformed values

Author(s)

Nikolai Knapp, nikolai.knapp@ufz.de

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# Transform values from 1 to 100 into a normal distribution
test.vec <- 1:100
norm.vec <- rank_transform_distr(x=test.vec, distr="norm", mean=55, sd=5)
hist(test.vec)
hist(norm.vec)
# Transform into a gamma distribution
gamma.vec <- rank_transform_distr(x=norm.vec, distr="gamma",
                                  shape=0.5, rate=1)
hist(gamma.vec)
# Transform into a truncated lognormal distribution
require(truncdist)
trunc.lnorm.vec <- rank_transform_distr(x=gamma.vec, distr="trunc",
                                        meanlog=3, sdlog=0.5,
                                        spec="lnorm", a=10, b=40)
hist(trunc.lnorm.vec)

niknap/ScalingFunctions documentation built on May 22, 2021, 6:43 a.m.