[Numpy-discussion] np.linalg.lstsq with several columns all 0 => huge x ?

josef.pktd@gmai... josef.pktd@gmai...
Wed Oct 24 12:59:37 CDT 2012


On Wed, Oct 24, 2012 at 1:33 PM, denis <denis-bz-gg@t-online.de> wrote:
> Folks,
>    np.linalg.lstsq of a random-uniform A 50 x 32 with 3 columns all 0
> returns x[:3] 0 as expected,
> but 4 columns all 0 => huge x:
> lstsq (50, 32) with 4 columns all 0:
>      [ -3.7e+09  -3.6e+13  -1.9e+13  -2.9e+12  7.3e-01 ...
>
> This may be a roundoff problem, or even a Mac Altivec lapack bug,
> not worth looking into. linalg.svd is ok though, odd.
>
> Summary: if you run linalg.lstsq on big arrays,
> either check max |x|
> or regularize, do lstsq( vstack( A, weight * eye(dim) ),
>                           hstack( b, zeros(dim) ))

lstsq has rcond argument to do (I think) essentially the same.
might need to be increased in your example.

Josef

>
> cheers
>    -- denis
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion


More information about the NumPy-Discussion mailing list