a run function gives an error due to size

Hi
for bi= 1: 10;
bj= 1 : 10;
resultt(bi,bj) = birfazson(1,birfazson(2,:) == 1).'
end
I have such code in my file. When I run this it gives an error like this:
Unable to perform assignment because the size of the left side is 1-by-10 and the size of the right side is 5-by-1.
Error in pirellinew_02042022 (line 101)
resultt(bi,bj) = birfazson(1,birfazson(2,:) == 1).'
My right side values may change every time I run it. So what can I do in this situation?

1 Kommentar

Jan
Jan am 2 Apr. 2022
It depends on what you want to achieve. You didn't mention this yet.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jan
Jan am 2 Apr. 2022

0 Stimmen

Maybe:
resultt = nan(10, 10);
for bi = 1:10
r = birfazson(1, birfazson(2,:) == 1);
if ~isempty(r)
resultt(bi, 1:numel(r)) = r;
end
end
The body of the loop doe not depend on the loop counter bi. I assume, this is a simplification for the question in the forum.

2 Kommentare

I wanted to find the sequences with 1 in the matrix named birfazson (in the first row) and print them one after the other in the first column of another matrix (resultt matrix).
Then I want to repeat this for values 2,3,4,5,6,7,8,9,10.
So as the second operation
I wanted to find the sequences with 2 in the matrix named birfazson (in the first row) and print them one after the other in the second column of another matrix(resultt matrix). And I intended to repeat that up to 10.
Jan
Jan am 3 Apr. 2022
What does this mean: "wanted to find the sequences with 1 in the matrix"?
Please give us some example data for the input and the wanted output.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Mathematics finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 2 Apr. 2022

Kommentiert:

Jan
am 3 Apr. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by