indexing and performing operations in matrix

1 次查看(过去 30 天)
I have an nx2 matrix A. I also have an interaction matrix of A, which looks like this:
interact = [1 2;
1 4;
1 5;
2 1;
2 3;
3 4;
3 6]
These numbers are just the index. I want to perform the following operation: (A(1,:) - A(2,:))+(A(1,:)-A(4,:))+ (A(1,:)-A(5,:)), then store result into some matrix R(1,:)
Likewise, A(2,:) - A(1,:) + A(2,:) - A(3,:) = R(2,:) etc.
How do I do this?
  2 个评论
Walter Roberson
Walter Roberson 2015-11-11
Could you confirm that all of the entries with the same value in column 1 should be treated as a group? And if that is the case, then what should happen if the entrees are not consecutive, such as if there was another entry beginning with 1 after the [3 6] ?
cgo
cgo 2015-11-11
I got it already!!!
for val=1:n
iv=interact(ismember(interact(:,1),val),2)
repmat(A(val,:),size(iv,1),1)
A(iv,:)
end
Thanks for your help though.

请先登录,再进行评论。

回答(0 个)

类别

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