How to: For loop and matrix indexing in matlab?
1 次查看(过去 30 天)
显示 更早的评论
I = 5; % e.g number of nodes
for i =1:I
initial_matrix = [0]; % an initial matrix will be generated for each node
end
Now, i want to skip the initial_matrix of node 1 and consider the initial_matrix of all other nodes (nodes 2,3,4 and 5) and subtract each of them from 1 and take their product:
(1 - initial_matrix of node 2) * (1 - initial_matrix of node 3) * (1 - initial_matrix of node 3) * (1 - initial_matrix of node 4) * (1 - initial_matrix of node 5).
- So for each node i, I will consider all other nodes but not the node i itself
Can any one tell me or give me hints on how this can be achieved? Thanks!
1 个评论
Jan
2013-9-11
编辑:Jan
2013-9-11
The question is unclear. The posted code does not create a vector, but creates the same scalar variable in each iteration. The term "node" is not clear - does "initial_matrix of node 2" mean initial_matrix(2) ?
Creating a vector of zeros is surely a task for the zeros command. Then subtracting the values from 1 and multiplying the results creates 1. So the aim of your code is not clear. I assume you simplified too much.
回答(1 个)
Simon
2013-9-11
Hi!
Your code only gives you a scalar "initial_matrix" with value 0.
Take a look at http://www.mathworks.com/help/matlab/math/matrix-indexing.html to read about indexing.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!