Clear Filters
Clear Filters

How to access the minor of a matrix.

8 views (last 30 days)
Hayashi
Hayashi on 5 Jun 2013
If I have an n x n matrix, is there a way to access a smaller part of the matrix (thus yielding a smaller matrix) with arbitrary size? For instance, I have a randomly generated 32x32 matrix and I would like to access the 16x16 block in the lower right. I suppose I could simply access the entries I want but that seems inefficient, particularly as my matrix sizes increase.
  3 Comments
Jan
Jan on 5 Jun 2013
What exactly seems inefficient?
Hayashi
Hayashi on 5 Jun 2013
There isn't a difference. I can construct the minor by accessing the entries. I was wondering if I could simply specify the minor I want and MATLAB could create it.

Sign in to comment.

Accepted Answer

Iain
Iain on 5 Jun 2013
big = randn(1000,1000,4);
small = big(n:n+m,o:o+p,q:q+r);
small is an m+1 x p+1 x r+1 matrix, which was taken starting at (n,o,q) of the big one...
It works on whatever number of dimensions you need.
  1 Comment
Matt J
Matt J on 5 Jun 2013
Edited: Matt J on 5 Jun 2013
@Hayashi
This doesn't seem different from "accessing the entries". The expression
small = big(n:n+m,o:o+p,q:q+r);
does access entries from "big".

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!