Book Image

NumPy: Beginner's Guide

By : Ivan Idris
Book Image

NumPy: Beginner's Guide

By: Ivan Idris

Overview of this book

Table of Contents (21 chapters)
NumPy Beginner's Guide Third Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
NumPy Functions' References
Index

Time for action – decomposing a matrix


It's time to decompose a matrix with the SVD using the following steps:

  1. First, create a matrix as shown in the following:

    A = np.mat("4 11 14;8 7 -2")
    print("A\n", A)

    The matrix we created looks like the following:

    A
    [[ 4 11 14]
     [ 8  7 -2]]
    
  2. Decompose the matrix with the svd() function:

    U, Sigma, V = np.linalg.svd(A, full_matrices=False)
    print("U")
    print(U)
    print("Sigma")
    print(Sigma)
    print("V")
    print(V)

    Because of the full_matrices=False specification, NumPy performs a reduced SVD decomposition, which is faster to compute. The result is a tuple containing the two unitary matrices U and V on the left and right, respectively, and the singular values of the middle matrix:

    U
    [[-0.9486833  -0.31622777]
     [-0.31622777  0.9486833 ]]
    Sigma
    [ 18.97366596   9.48683298]
    V
    [[-0.33333333 -0.66666667 -0.66666667]
     [ 0.66666667  0.33333333 -0.66666667]]
    
  3. We do not actually have the middle matrix—we only have the diagonal values. The other values are all 0. Form the middle...