How can we write the for loop for accessing a table data?

조회 수: 2 (최근 30일)
kelvina
kelvina 2014년 1월 28일
편집: kelvina 2014년 1월 28일
i want to perform operations on a table data, for that i need to access data of table using its index and again updated value of that index data should be stored at the same position.
  • * For Example: * * A table having 3 columns and 10 rows, i have written following code but its not working,
for i=1:10
for j=1:3
if j==1
x=x<=5
else if j==2
x=x<=15
else
x=x<=25
end
end
end
Please correct my code......
  댓글 수: 2
Amit
Amit 2014년 1월 28일
You know x<=5 will create a logical vector for 0 where the conditions dont satisfy and 1 for where it will.
Amit
Amit 2014년 1월 28일
Moreover, by x<=5, are you trying to createe a logical vector for the whole matrix or just that column?

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2014년 1월 28일
for i=1:10
for j=1:3
if j==1
x(i,j) = x(i,j) <= 5
else if j==2
x(i,j) = x(i,j) <= 15
else
x(i,j) = x(i,j) <= 25
end
end
end

추가 답변 (1개)

Amit
Amit 2014년 1월 28일
If Walter's interpretation is correct, then you do not need so many loops. A single loop approach will be:
A = [5 15 25];
for j = 1:3
x(:,j) = x(:,j) <= A(j);
end
or no loop way:
x = x <= repmat([5 15 25],10,1);

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by