Error_Unable to perform assignment because brace indexing is not supported for variables of this type
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Tooba Jawwad
am 4 Aug. 2021
Kommentiert: Tooba Jawwad
am 7 Aug. 2021
I am keep getting an error: Unable to perform assignment because brace indexing is not supported for variables of this type.
Can someone please help me out to resolve the error?
for i = 1:size(platemap,1)
S = zeros(size(platemap,1));
G = zeros(size(platemap,1));
[S{i,1},G{i,1}] = cellcyclestages('f',Data{i,1},params,opts);
end
Thank You
2 Kommentare
Akzeptierte Antwort
Image Analyst
am 5 Aug. 2021
What is Data? Hopefully it's a 2-D cell array. Or at least a 1-D cell array.
What does the cellcyclestages() function return? Two scalars? If so you don't need cell arrays. Vectors whose length may change from one iteration to the next? If so, then you need cell arrays.
See the FAQ for a nice discussion of cell arrays:
Try
numValues = size(platemap,1);
S = cell(1, numValues);
G = cell(1, numValues);
for k = 1 : numValues
[S{k}, G{k}] = cellcyclestages('f', Data{k,1}, params, opts);
end
Weitere Antworten (1)
Walter Roberson
am 5 Aug. 2021
Repaired code, no loop.
i = size(platemap,1);
[S{i,1}, G{i,1}] = cellcyclestages('f',Data{i,1},params,opts);
You do not need a loop because your existing code overwrites all of S and G every iteration of the loop, so your code only remembers what was done on the last iteration; so you might as well not any other iterations.
The recommended code would have been different if you were not overwriting all of S and G every iteration.
Siehe auch
Kategorien
Mehr zu Data Types 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!