Retain rows and columns depending on the values of an array

2 次查看(过去 30 天)
Hi,
For example I have the square matrix:
A = [3 5 7 1 2; 2 4 3 1 5; 2 6 1 6 6; 4 7 5 1 1; 2 0 1 5 2]
Assuming I have the vector B, B = [1, 4, 5]
How do I get this output: A = [ 3 7 2; 2 1 6; 2 1 2]
Essentially it means A(2,:) = [], A(3,:) = [], A(:,2) = [], and A(:,3) = []. I was wondering if there is a more elegant way of doing this?

采纳的回答

Voss
Voss 2024-1-1
A = [3 5 7 1 2; 2 4 3 1 5; 2 6 1 6 6; 4 7 5 1 1; 2 0 1 5 2];
B = [1, 3, 5];
A = A(B,B)
A = 3×3
3 7 2 2 1 6 2 1 2
(The example suggests B is [1 3 5], not [1 4 5].)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by