In [1]:
import numpy as np
In [2]:
arr = np.array([[2, 5], [1, 3]])
In [3]:
arr_inv = np.linalg.inv(arr)
print(arr_inv)
In [4]:
mat = np.matrix([[2, 5], [1, 3]])
In [5]:
mat_inv = np.linalg.inv(mat)
print(mat_inv)
In [6]:
mat_inv = mat**-1
print(mat_inv)
In [7]:
mat_inv = mat.I
print(mat_inv)
In [8]:
result = mat * mat.I
print(result)
In [9]:
# print(arr.I)
# AttributeError: 'numpy.ndarray' object has no attribute 'I'
In [10]:
arr_s = np.array([[0, 0], [1, 3]])
In [11]:
# print(np.linalg.inv(arr_s))
# LinAlgError: Singular matrix
In [12]:
arr_pinv = np.linalg.pinv(arr_s)
print(arr_pinv)
In [13]:
print(arr_s @ arr_inv)
In [14]:
print(np.linalg.pinv(arr_pinv))
In [15]:
print(np.linalg.inv(arr))
In [16]:
print(np.linalg.pinv(arr))
In [17]:
mat_s = np.mat([[0, 0], [1, 3]])
In [18]:
# print(np.linalg.inv(mat_s))
# LinAlgError: Singular matrix
In [19]:
# print(mat_s**-1)
# LinAlgError: Singular matrix
In [20]:
# print(mat_s.I)
# LinAlgError: Singular matrix
In [21]:
print(np.linalg.pinv(mat_s))