Unpacking and tabulating contents of a cell array

19 Ansichten (letzte 30 Tage)
Ryan Graham
Ryan Graham am 9 Mär. 2021
Kommentiert: Ryan Graham am 9 Mär. 2021
Hi, I have the following cell array:
My goal is to unpack the contents of each cell and tabulate the amount of times each number occurs. My first attempt below unpacks each cell in the command window and only the final 25th cell in the workspace under 'ans':
vsel{:}
My second attempt only returns the 1st of 25 cells in a new array in the workspace:
h = size(vsel,1);
vsel = vsel{1:h,1};
My third attempt was to use a comma separated list and employ concatenation but that only appears to work on arrays where each cell is of the same dimensions:
matrix = vertcat(vsel{:});
Once I can extract this information, I plan on tabulating the amount of times each number appears in each cell. Any help would be greatly appreciated!
-Ryan
  3 Kommentare
Walter Roberson
Walter Roberson am 9 Mär. 2021
In the posted data, the entries are all sorted and no entry occurs more than once per cell. Are those characteristics that can be counted on?
Ryan Graham
Ryan Graham am 9 Mär. 2021
Hi Stephen and Walter,
Thanks for your help. This is an adaptive - reweighted iterative sampling approach that will always return a 25x1 cell array. However, the contents of each cell in the array can range from 1:2 to 1:50. Using Walter's initial approach, I was able to create a histogram of how many times each number appeared in total for the 25x1 array using the following:
edges = unique(allnumbers)
counts = histc(allnumbers(:),edges)
bar(counts)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 9 Mär. 2021
all_numbers = horzcat(vsel{:});
This is the same as
all_numbers = [vsel{:}];

Weitere Antworten (0)

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by