Azzera filtri
Azzera filtri

Unable to perform assignment because the left and right sides have a different number of elements.

1 visualizzazione (ultimi 30 giorni)
i=3;
clmax= zeros(i,1);
for j = 1: 1: i
clmax(j) = del (j).clmax;
end
  5 Commenti

Accedi per commentare.

Risposte (1)

Jan
Jan il 30 Giu 2021
Modificato: Jan il 30 Giu 2021
The error means, that the contents of the fields clmax are not scalar. Check this:
clmax = {del.clmax};
s = cellfun('prodofsize', clmax)
Storing the data in a cell array is the best way, if the fields have different sizes. If call have the same dimension, you can concatenate them to a matrix or a n-dim array:
clmax = cat(1, del.clmax) % Or 2, 3, or what ever
You see, that neither for a cell array nor for a numerical array a loop is required.

Categorie

Scopri di più su Structures in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by