Vertically concatenate a 2 column comma separated list

2 visualizzazioni (ultimi 30 giorni)
I have a structure of size 100 extracted from regionprops called stat. Id like to extract the column of data that stores the centroids of each component. Since they are in a list, I tried
centroids = [stat(:).Centroid]';
but it gives me an array of size 200 meaning it doesnt concatenate properly. Then I tried
x = [stat(:).Centroid(1)];
y = [stat(:).Centroid(2)];
but I get an error "Scalar index required for this type of multi-level indexing". Id like the result to be an array of 100 rows and 2 columns. Can someone suggest what I can do ? This is so difficult.

Risposta accettata

Guillaume
Guillaume il 17 Gen 2017
[a, b] is the same as horzcat, [a; b] is the same as vertcat, so to obtain the result you want:
centroids = vertcat(stat.Centroid);
  1 Commento
RuiQi
RuiQi il 17 Gen 2017
wow i didnt know such a function existed. I guess thats how I will handle comma separated lists in the future thanks !

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by