<aside> 💡

Normalisation rescales data to bring values into a specific range (often [0, 1]) or to ensure a vector's magnitude equals 1.

</aside>

Normalisation is essential in applications where the scale of data can significantly impact results.

However, when working with count data (where the absolute numbers carry significant meaning), normalisation could potentially remove important information from the dataset.

Difference between Normalisation and Scaling

The terms normalisation and scaling are often used interchangeably, but they have distinct meanings depending on the context.

graph LR;
    A["Original Data:
    10, 20, 30, 40"] --> B["Normalisation [0,1]"];
    A --> C["Scaling (StandardScaler)"];
    B --> D["Result:
    0.0, 0.33, 0.67, 1.0"];
    C --> E["Result:
    -1.34, -0.45, 0.45, 1.34"];
    
    %% Add styling
    style A fill:#f9f,stroke:#333,stroke-width:2px
    style D fill:#bef,stroke:#333,stroke-width:2px
    style E fill:#bef,stroke:#333,stroke-width:2px

Note how the same dataset is transformed differently by normalisation and scaling:

Normalisation:

Scaling:

Application