Matrix Operations in Python
1. Addition and Subtraction
Two matrices A and B of the same shape can be added:
123456789import numpy as np A = np.array([[1, 2], [5, 6]]) B = np.array([[3, 4], [7, 8]]) C = A + B print(f'C:\n{C}') # C = [[4, 6], [12, 14]]
2. Multiplication Rules
Matrix multiplication is not element-wise.
Rule: if A has shape (n,m) and B has shape (m,l), then the result has shape (n,l).
1234567891011121314151617181920import numpy as np # Example random matrix 3x2 A = np.array([[1, 2], [3, 4], [5, 6]]) print(f'A:\n{A}') # Example random matrix 2x4 B = np.array([[11, 12, 13, 14], [15, 16, 17, 18]]) print(f'B:\n{B}') # product shape (3, 4) product = np.dot(A, B) print(f'np.dot(A, B):\n{product}') # or equivalently product = A @ B print(f'A @ B:\n{product}')
3. Transpose
Transpose flips rows and columns.
General rule: if A is (nΓm), then AT is (mΓn).
1234567import numpy as np A = np.array([[1, 2, 3], [4, 5, 6]]) A_T = A.T # Transpose of A print(f'A_T:\n{A_T}')
4. Inverse of a Matrix
A matrix A has an inverse Aβ1 if:
Aβ Aβ1=IWhere I is the identity matrix.
Not all matrices have inverses. A matrix must be square and full-rank.
12345678910import numpy as np A = np.array([[1, 2], [3, 4]]) A_inv = np.linalg.inv(A) # Inverse of A print(f'A_inv:\n{A_inv}') I = np.eye(2) # Identity matrix 2x2 print(f'A x A_inv = I:\n{np.allclose(A @ A_inv, I)}') # Check if product equals identity
Thanks for your feedback!
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Can you explain why matrix multiplication is not element-wise?
How do I know if a matrix is full-rank?
What happens if I try to invert a non-square matrix?
Awesome!
Completion rate improved to 1.96
Matrix Operations in Python
Swipe to show menu
1. Addition and Subtraction
Two matrices A and B of the same shape can be added:
123456789import numpy as np A = np.array([[1, 2], [5, 6]]) B = np.array([[3, 4], [7, 8]]) C = A + B print(f'C:\n{C}') # C = [[4, 6], [12, 14]]
2. Multiplication Rules
Matrix multiplication is not element-wise.
Rule: if A has shape (n,m) and B has shape (m,l), then the result has shape (n,l).
1234567891011121314151617181920import numpy as np # Example random matrix 3x2 A = np.array([[1, 2], [3, 4], [5, 6]]) print(f'A:\n{A}') # Example random matrix 2x4 B = np.array([[11, 12, 13, 14], [15, 16, 17, 18]]) print(f'B:\n{B}') # product shape (3, 4) product = np.dot(A, B) print(f'np.dot(A, B):\n{product}') # or equivalently product = A @ B print(f'A @ B:\n{product}')
3. Transpose
Transpose flips rows and columns.
General rule: if A is (nΓm), then AT is (mΓn).
1234567import numpy as np A = np.array([[1, 2, 3], [4, 5, 6]]) A_T = A.T # Transpose of A print(f'A_T:\n{A_T}')
4. Inverse of a Matrix
A matrix A has an inverse Aβ1 if:
Aβ Aβ1=IWhere I is the identity matrix.
Not all matrices have inverses. A matrix must be square and full-rank.
12345678910import numpy as np A = np.array([[1, 2], [3, 4]]) A_inv = np.linalg.inv(A) # Inverse of A print(f'A_inv:\n{A_inv}') I = np.eye(2) # Identity matrix 2x2 print(f'A x A_inv = I:\n{np.allclose(A @ A_inv, I)}') # Check if product equals identity
Thanks for your feedback!