How to normalize output data

2 views (last 30 days)
Giovanni Ponce
Giovanni Ponce on 13 Jul 2022
Answered: Neha on 31 Aug 2023
I want to normalize output and input data of my simulink model algorithm. But I don't want to just rescale the limits of the Y-axis plot from -2 to 2. I tried this formulas, but they only rescale the Y-axis without the actual data
Normailized_data_Pset = (sim_data.Pset-min(sim_data.Pset))/(max(sim_data.Pset)-min(sim_data.Pset));
or another formula.......
T = [sim_data.Pset];
H = normalize (T);
I want to normilize the actual data from -2 to 2 to plot the data inbetween those values.
How would I do that?

Answers (1)

Neha
Neha on 31 Aug 2023
Hi Giovanni,
I understand that you want to normalize your data from the range of -2 to 2 without rescaling the limits of the Y-axis. You can refer to the following code snippet:
% Normalize input data
normalized_input = ((input_data - min(input_data)) * (4 / (max(input_data) - min(input_data)))) - 2;
% Normalize output data
normalized_output = ((output_data - min(output_data)) * (4 / (max(output_data) - min(output_data)))) - 2;
The formula first normalizes the data between 0 and 1 using the "min" and "max" functions. It then scales the normalized data between -2 and 2 by multiplying it with 4 and subtracting 2.
Hope this helps!

Products


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!