repeat loop in a table

조회 수: 1 (최근 30일)
Matt Brianik
Matt Brianik 2018년 1월 16일
답변: Ronit 2024년 8월 21일
How do i make it so that the code below will replace T(i)==5 with Y(i) in multiple columns of table T. I can get it to work well when there is only one columns but have trouble making it repeat in additional columns
clear
X=(1:12);
Y=(101:112);
Table = [X;Y;Y;Y;X]
T=X.'
T=[T;T]
i=1
for n=1:12
if T(i)==5
T(i)=Y(i)
else
T(i)=T(i)
i=i+1
end
end

답변 (1개)

Ronit
Ronit 2024년 8월 21일
Hello Matt,
To replace values in multiple columns of a table in MATLAB, you can loop through each column and apply the same logic.
% Convert the matrix to a table
T = array2table(T);
% Loop through each column of the table
for col = 1:width(T)
for i = 1:height(T)
if T{i, col} == 5
T{i, col} = Y(mod(i,width(X)));
end
end
end
Hope it helps!

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by