Các phép tính cơ bản
Bài học 16 trên 18 trong khóa học Nền tảng NumPy của Coddy.
Các phép toán số học trên mảng Numpy rất linh hoạt
Ví dụ 1
Cộng, trừ, chia và nhân giữa các số và mảng
ary = np.array([0, 5, 10, 15, 20])
ary + 5 # --> [ 5, 10, 15, 20, 25]
ary - 5 # --> [-5, 0, 5, 10, 15]
ary / 5 # --> [ 0, 1, 2, 3, 4]
ary * 5 # --> [ 0, 25, 50, 75, 100]Ví dụ 2
Phép toán với mảng 2D
ary = np.array([[0, 1], [2, 3], [4, 5]])
ary + 5
>>> [[5, 6], [7, 8], [9, 10]]Ví dụ 3
Phép toán số học giữa các mảng
Cộng các phần tử ở những vị trí tương ứng
ary1 = np.array([1, 2, 3])
ary2 = np.array([4, 5, 6])
ary1 + ary2 # [1 + 4, 2 + 5, 3 + 6]
>>>[5, 7, 9] Ví dụ 4
Phép toán số học giữa các mảng 2D
ary1 = np.array([[0, 1], [2, 3], [3, 4], [5, 6]])
ary2 = np.array([[0, 1], [2, 3], [3, 4], [5, 6]])
ary1 + ary2 # --> [[0+0, 1+1], [2+2, 3+3], [3+3, 4+4], [5+5, 6+6]]
>>> [[ 0, 2], [ 4, 6], [ 6, 8], [10, 12]]
ary1 = np.array([[0, 1], [2, 3], [3, 4], [5, 6]])
ary2 = np.array([[2, 5]])
ary1 + ary2 # --> [[0+2, 1+5], [2+2, 3+5], [3+2, 4+5], [5+2, 6+5]]
>>> [[2, 6], [4, 8], [5, 9], [7, 11]]Lưu ý: Phép toán giữa các mảng có hình dạng không khớp sẽ thất bại!
ary1 = np.array([[0, 1], [2, 3], [3, 4], [5, 6]])
ary2 = np.array([[2, 5, 3]])
ary1 + ary2
>>> ValueError: operands could not be broadcast together with shapes (4,2) (1,3) Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Thử thách
DễTạo một hàm có tên func_operation nhận ba danh sách Python
và trả về tổng của ary1 * ary2 / ary3
Làm tròn kết quả đến hai chữ số thập phân.
- Để làm tròn kết quả, hãy dùng phương thức
round:round(num, 2)
Tự làm thử
import numpy as np
def func_operation(lst1, lst2, lst3):
# Complete here
Tất cả bài học trong Nền tảng NumPy
Tự luyện tập: Trình biên dịch Python online