Cell Array Conversion to a Numeric Array by using a loop
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Tianchu Lu
am 12 Sep. 2022
Bearbeitet: Tianchu Lu
am 12 Sep. 2022
I have a cell array containing over 9000 data, but I want to convert the cell array into double to which I am able to maunipulate data in such a way. Whereby the data is currently stored in cells and I want to find the movemean of 3,4,5 point respectively. Is there such a way that I can loop with a for loop so that after it has done the movmean(TEC{1,1},3) it would automatically do the movmean(TEC{1,2},3) and so on and so forth?
TEC_mean_1=movmean(TECs{1,1},3);
TEC_mean_2=movmean(TECs{1,1},4);
TEC_mean_3=movmean(TECs{1,1},5);
delta_TEC_1=TECs{1,1}-TEC_mean_1;
delta_TEC_2=TECs{1,1}-TEC_mean_2;
delta_TEC_3=TECs{1,1}-TEC_mean_3;
Many Thanks
Edited Version %%%%%%%%
This picture shows the cell and the row is a double array containing several hundred of data. I was hoping to to extract each row within this cell array and convert it into a single column double array, and finding the movmean of the double as shown in the cell array and then extracting the processed data and making it a new variable if possible( or any or mean method of data storage)
0 Kommentare
Akzeptierte Antwort
dpb
am 12 Sep. 2022
You can try
m=cellfun(@(x)movmean(x,3),TECs,'UniformOutput',0);
If the content of TECs is an array of double arrays, you'll get a new cell array of the moving mean by column of each of those arrays with the default behavior of movmean regarding end effects.
This is almost a pure quess from limited information on how the cell array is actually constructed; see <how-to-ask-a-question-on-answers-and-get-a-fast-answer> for pointers.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Type Conversion 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!