How to group arrays in a cell based from data?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have this graph representing force vs. time. Then, I found its peaks to group them representing sort of a trend. I need to create two different cells, one for the forces with positive peaks and one for the negative ones, and two different cells of the location in the "x" axis (time) of the positive and negative peaks.
For example, for the negative peak forces, I was using histcounts.
pks_f_min = [ -68.0928; -63.6998; -110.9254; -103.2375; -132.8908; -125.2030; -137.2840; -113.1220; -148.2667; -144.9718; -151.5615; -159.2494; -151.5615 ]
[~,~,f_bins]=histcounts(pks_f_min, flip([0 -10 -20 -30 -40 -50 -60 -70 -80 -90 -100 -110 -120 -130 -140 -150 -160]));
u=unique(f_bins);
for k=1:numel(u)
groups_f_min{k}=pks_f_min(f_bins==u(k));
end
In the end, groups_f_min needs to look like this:
groups_f_min = { [ -68.0928; -63.6998 ] [-110.9254; -103.2375 ] [ -132.8908; -125.2030 ] [ -137.2840; -113.1220] [ -148.2667; -144.9718 ] [ -151.5615] [ -159.2494; -151.5615 ]}
Since I will be using this code for other graphs, is there a way to make it automatically?. For instance, other force patterns may need to be grouped in a cell consisting of two, three, or four arrays. For example, the array in the cell groups_f_min, which is alone (-151.5615), would be accompanied by another value
6 Kommentare
Voss
am 23 Apr. 2022
In that case, I guess the bins for grouping (in both the positive and negative peaks cases) should be based on the times when the load is applied.
Antworten (0)
Siehe auch
Kategorien
Mehr zu Graphics Object Programming 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!