[SciPy-user] finding approximate rank of matrix

Dr Seth OLSEN s.olsen1 at uq.edu.au
Thu Aug 4 00:38:03 CDT 2005

```
Hi Dan,

You should be able to do this with a singular value decomposition.  The
singular values will tell you the projection along each corresponding
vector.  Choose a threshold for the singular value and take the vectors
corresponding to values above that - these should define your subspace.

Cheers,

Seth

ccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccms

Dr Seth Olsen, PhD
Postdoctoral Fellow, Biomolecular Modeling Group
Centre for Computational Molecular Science
Chemistry Building,
The University of Queensland
Qld 4072, Brisbane, Australia

tel (617) 33653732
fax (617) 33654623
email: s.olsen1 at uq.edu.au
Web: www.ccms.uq.edu.au

ccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccmsccms

----- Original Message -----
From: Dan Christensen <jdc at uwo.ca>
Date: Thursday, August 4, 2005 2:51 pm
Subject: [SciPy-user] finding approximate rank of matrix
> Suppose you have 300 vectors each with 64 components, and you want to
> find the smallest subspace of R^64 that they all lie in.  That would
> just be the rank of the 300x64 matrix that they form.  But
> unfortunately the vectors are generated numerically to low precision
> (maybe 1e-5 relative error?).  So taken literally, they will span
> R^64.  I'd like to find the smallest subspace of R^64 that they all
> approximately lie in, with a specified tolerance.
>
> Is there an easy way to do this?
>
> Thanks,
>
> Dan
>
> _______________________________________________
> SciPy-user mailing list
> SciPy-user at scipy.net
> http://www.scipy.net/mailman/listinfo/scipy-user
>

```