Rescale vector to have specified minimum, midpoint, and maximum

rescale_mid(x, to, from, mid, ...)

# S3 method for numeric
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid = 0, ...)

# S3 method for logical
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid = 0, ...)

# S3 method for dist
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid = 0, ...)

# S3 method for POSIXt
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid, ...)

# S3 method for Date
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid, ...)

# S3 method for integer64
rescale_mid(x, to = c(0, 1), from = range(x, na.rm = TRUE), mid = 0, ...)

Arguments

x

vector of values to manipulate.

to

output range (numeric vector of length two)

from

input range (vector of length two). If not given, is calculated from the range of x

mid

mid-point of input range

...

other arguments passed on to methods

Examples

rescale_mid(1:100, mid = 50.5)
#>   [1] 0.00000000 0.01010101 0.02020202 0.03030303 0.04040404 0.05050505
#>   [7] 0.06060606 0.07070707 0.08080808 0.09090909 0.10101010 0.11111111
#>  [13] 0.12121212 0.13131313 0.14141414 0.15151515 0.16161616 0.17171717
#>  [19] 0.18181818 0.19191919 0.20202020 0.21212121 0.22222222 0.23232323
#>  [25] 0.24242424 0.25252525 0.26262626 0.27272727 0.28282828 0.29292929
#>  [31] 0.30303030 0.31313131 0.32323232 0.33333333 0.34343434 0.35353535
#>  [37] 0.36363636 0.37373737 0.38383838 0.39393939 0.40404040 0.41414141
#>  [43] 0.42424242 0.43434343 0.44444444 0.45454545 0.46464646 0.47474747
#>  [49] 0.48484848 0.49494949 0.50505051 0.51515152 0.52525253 0.53535354
#>  [55] 0.54545455 0.55555556 0.56565657 0.57575758 0.58585859 0.59595960
#>  [61] 0.60606061 0.61616162 0.62626263 0.63636364 0.64646465 0.65656566
#>  [67] 0.66666667 0.67676768 0.68686869 0.69696970 0.70707071 0.71717172
#>  [73] 0.72727273 0.73737374 0.74747475 0.75757576 0.76767677 0.77777778
#>  [79] 0.78787879 0.79797980 0.80808081 0.81818182 0.82828283 0.83838384
#>  [85] 0.84848485 0.85858586 0.86868687 0.87878788 0.88888889 0.89898990
#>  [91] 0.90909091 0.91919192 0.92929293 0.93939394 0.94949495 0.95959596
#>  [97] 0.96969697 0.97979798 0.98989899 1.00000000
rescale_mid(runif(50), mid = 0.5)
#>  [1] 0.512250935 0.164322515 0.779133281 0.250607003 0.680504463 0.543298719
#>  [7] 0.781919509 0.766997016 0.142975808 0.816130275 0.407051920 0.694686635
#> [13] 0.727535098 0.319728215 0.800029482 0.461254810 0.529503972 0.284661146
#> [19] 0.856899441 0.456877777 0.858787605 0.089160341 0.155731649 0.659044614
#> [25] 0.396412345 0.734132103 0.494404404 0.471975054 0.248147368 0.168243611
#> [31] 0.717292226 0.724589259 0.740347087 0.206688910 0.323437483 0.938915146
#> [37] 0.881041303 0.530364119 0.175083966 0.075803309 0.469151932 1.000000000
#> [43] 0.308453432 0.037967048 0.213668475 0.634008848 0.058437609 0.685157928
#> [49] 0.760332897 0.007227264
rescale_mid(1)
#> [1] 0.5