How to normalize time periods
45 views (last 30 days)
Show older comments
Hinde essmahi BOUZIANE
on 20 Jun 2019
Commented: Aravind Ravikumar
on 20 Jun 2019
I am very new to matlab and I don't know how to code this problem.I have two arrays: Debut and End. Each array contains doubles that indicates the start(Debut) or the end(End) of a certain period.I am doing some signal processing so I want all these periods be normalised. I am thinking of calculating the mean of all periods and then normalize each period to that mean ? or do you have any other ideas ?
0 Comments
Accepted Answer
Aravind Ravikumar
on 20 Jun 2019
Edited: Aravind Ravikumar
on 20 Jun 2019
MATLAB has a normalize function, you can view the documentation here. From your description of your problem, you can first calculate the mean of the arrays Debut and End element-wise and then use normalize() on the resultant array. For example, the following code does somewhat similar to what you want:
x = rand(1,10);
y = rand(1,10);
avg = (x+y)/2;
norm_avg = normalize(avg);
where x,y are 2 arrays, avg is the element-wise average of x,y and norm_avg is the result after using normalize() on avg.
6 Comments
Aravind Ravikumar
on 20 Jun 2019
You could keep normalized values of each array separately in some other array, and to calculate normalized value of the difference you can use the original array.
x = rand(1,10);
y = rand(1,10);
diff = y-x;
res_nor = diff ./ max(diff)
x_nor = x ./ max(x)
y_nor = y ./ max(y)
Maybe something like the above code.
More Answers (1)
Akshay Malav
on 20 Jun 2019
Hi , there is a inbuilt function in matlab to normalize the data . Look at the link mentioned below .
The function is V = normalize(A)
V will contain the normalized value of the array A
3 Comments
Akshay Malav
on 20 Jun 2019
Ans also adding to above answer the normalize function ignores NaN values if it is present in your array
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!