How do I iteratively create new structure fields?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
James Parkus
am 30 Nov. 2017
Beantwortet: Walter Roberson
am 30 Nov. 2017
Hello, I am trying to split data logarithmically to do a Fourier analysis. To do this I figured it would be very convenient to store each new data matrix in a structure. So let's say I start with a initial pool of 100000 data points. I want the next data pool to be 10000 and then 1000 and so on. However, I am running into an issue where I cannot tell the script to create new fields according to each iteration through the while loop.
To explain a bit further.
I initially have n = 1. Where n is the iteration number. Then I separate the data I want and store it in a structure, Window.Win1. Then on the next iteration, n = 2, I want to store the new data in a new field, Window.Win2., and so on.
Here is my code,
n = 1;
low(n) = 1;
up(n) = 100000;
hub = up(n) - low(n);
while hub > 0
sprintf('Window.Win%s = Vib_Data(low:up,1)',n);
low(n+1) = low(1) + up(n);
up(n+1) = up(n) + up(n)*10^(-n);
hub = up(n) - low(n);
n = n + 1;
end
I attempted to use a sprintf function but to no avail. I understand this may not be the best way to go about performing this separation so if you have any comments on that fact, please send them my way. I am still learning.
Thank you,
James Emerson Parkus
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 30 Nov. 2017
Change
sprintf('Window.Win%s = Vib_Data(low:up,1)',n);
to
Window.(sprintf('Win%d', n)) = Vib_Data(low:up,1);
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Audio and Video Data finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!