Min-Max Normalization Calculator
Min-max normalization is a linear transformation that moves every value of a variable onto a shared range in which the smallest observation becomes 0 and the largest becomes 1. Because it puts variables measured in different units (age against income, a score against a duration) on the same scale, it is an almost mandatory preprocessing step for distance-based methods — k-nearest neighbors, k-means clustering, and neural networks.
This calculator rescales your data set to whatever [a, b] range you choose and shows, in a single table, each observation's raw value, its position on the unit interval, its scaled value, and its z-score. It also quantifies how outliers break normalization: a single extreme observation squeezes the rest of the data into a narrow band of the scale, a problem that standardization (the z-score) does not have.
Min-Max Normalization Formulas
Unit interval [0, 1]: x′ = (x − min) / (max − min) Chosen range [a, b]: x″ = a + (b − a) · (x − min) / (max − min) Range: R = max − min Inverse: x = min + (x″ − a) · R / (b − a) Normalized mean: x̄′ = (x̄ − min) / R Normalized deviation: s′ = s / R For comparison (z): z = (x − x̄) / s
The denominator of the formula is the range of the data, which means the whole scale rests on just two observations — the smallest and the largest value. A single extreme observation shifts the entire transformation, whereas in standardization the scale comes from all n observations.
How to Calculate
- Paste the values you want to rescale into the box; commas, spaces, and line breaks are all accepted.
- Set the target range: a = 0 and b = 1 for classic normalization, a = −1 and b = 1 for networks with a tanh output.
- In the transformed value table, compare each observation's raw value, its position on the unit interval, and its scaled value.
- Read the outlier warning: when there is an extreme observation, the results panel states what percentage band of the target range the remaining data is squeezed into.
- Look at the before and after histograms side by side; the shape staying the same confirms that the transformation is linear.
- If you are going to use this in a model, note down the min and the max — the very same two numbers must be applied to the test data and to new observations.
Worked Examples
Compression in a series with an outlier
The min is 12, the max is 90, and the range is 78, so the value 25 maps to (25 − 12)/78 = 0.1667. Because 90 is an outlier, the remaining 9 observations are squeezed into only 55.1% of the 0-1 scale and the normalized mean stays at 0.2846; the z-score of that same extreme observation is merely 2.38.
Sample size (n): 10 · Smallest value (min): 12.00 · Largest value (max): 90.00
A −1 to 1 range for a neural network
The min is 20, the max is 80, and the range is 60, so the value 50 first becomes (50 − 20)/60 = 0.5 on the unit interval and then −1 + 2·0.5 = 0.0000 on the scaled one. With symmetric data the normalized mean lands exactly in the middle, at 0.0000.
Sample size (n): 9 · Smallest value (min): 20.00 · Largest value (max): 80.00
Moving exam scores onto a 0-100 scale
A range of 46 points is spread across 100 units: the lowest score of 34 becomes 0, the highest of 80 becomes 100, and a score of 58 maps to 100·(58 − 34)/46 = 52.1739. Since there are no outliers, the observations spread across the whole scale.
Sample size (n): 9 · Smallest value (min): 34.00 · Largest value (max): 80.00