How to remove certain rows and columns in a matrix?

I have this 8x8 matrix and I want to preserve only the 1, 2, 7 and 8 (for now, these numbers change based on a computation) rows and column to get a 4x4 output matrix. How can I delete other columns and rows or copy the forementioned rows and columns to a new matrix with a new 4x4 structure?
Keep in mind that the desired rows and columns change based on a function computation.
A = [
0 1 0 0 0 0 0 1
1 0 0 0 0 0 1 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 1 0 0 0 0 0 1
1 0 0 0 0 0 1 0 ]
Desired output (for this context):
A = [
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0 ]

2 Comments

>> B = A([1,2,7,8],[1,2,7,8])
B =
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
Thanks @Stephen, nice and clean solution. ;)

Sign in to comment.

 Accepted Answer

w = A([1,2,7,8], :)
Wanted = w(:, [1,2,7,8])

1 Comment

Ali
Ali on 10 Jul 2020
Edited: Ali on 10 Jul 2020
You're a lifesaver buddy! Respect! :)

Sign in to comment.

More Answers (0)

Categories

Tags

Asked:

Ali
on 10 Jul 2020

Commented:

Ali
on 10 Jul 2020

Community Treasure Hunt

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

Start Hunting!