3
$\begingroup$

I am using a generalized formula for normalizing one data range to another but am having difficulty finding its formal name, if it even exists (sorry if my notation is strange):

$$ x_b = min_b + \frac{(x_a - min_a)(max_b-min_b)}{max_a - min_a} $$

This converts an $x$ in range $a$ to its respective value in range $b$.

For example, if you are mapping the value $2$ from range $[0,\ldots,10]$ into $[100,\ldots,200]$ then

$$ 120 = 100 + \frac{(2 - 0)(200-100)}{10 - 0} $$

I chose these values because it is easy to validate in my head; it works for general ranges.

$\endgroup$
4
  • $\begingroup$ That is very cool, I have not encountered it, but I solves an issue in some data I am interested in gathering. Can you give an example or some more background to this 'range normalization'? $\endgroup$
    – Alexis
    Jun 18, 2014 at 17:17
  • 4
    $\begingroup$ @Alexis This is called linear interpolation. (From around the 1300's until c. the 1980's, every educated person in the West was taught how to do this, because information had to be looked up in tables since personal computers were not widespread.) You can do it graphically by (quite literally) plotting a pair of points in Cartesian coordinates and connecting them with a line segment. The formula is just the familiar "$y=mx+b$" form from elementary algebra in disguise. $\endgroup$
    – whuber
    Jun 18, 2014 at 17:35
  • $\begingroup$ @Alexis Following on from whuber's discussion this answer discusses how to do linear interpolation (and several other kinds) in statistical tables. I guess I fall into the group that learned how to do it in school (probably grade 9 or thereabouts, I think, or whenever it was we learned how to use log tables), between classes in making stone tools and mammoth-hunting practicals, but it seems to be much more rarely taught these days. In the above question, interpolation is used to linearly rescale the data to lie between two known values. $\endgroup$
    – Glen_b
    Jun 19, 2014 at 6:11
  • $\begingroup$ It is linear interpolation... it's just a different application that I am accustomed to thinking about it. I am seeing an old tool in a new light. :) $\endgroup$
    – Alexis
    Jun 19, 2014 at 6:31

1 Answer 1

5
$\begingroup$

Isn't this pretty much linear inter/extrapolation? You're taking the ratio along the line that $x_a$ is from $\min_a$ to $\max_a$ and moving down the $b$ line by that amount to create $x_b$. Re-writing your formula: $$ x_b = \overbrace{\frac{x_a - \min_a}{\max_a - \min_a}}^\textrm{distance down A line}\cdot\underbrace{(\max_b-\min_b)}_\textrm{length of B line} + \overbrace{\min_b}^\textrm{start of B line} $$

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.