Trong quá trình xử lý dữ liệu số, chắc hẳn chúng ta sẽ cần phải thống kê để xem xét một vài tính chất của dữ liệu. Khi làm việc trong mảng Numpy sẽ cung cấp cho chúng ta một số hàm thống kê để phục vụ việc xử lý dữ liệu nhanh chóng và hiệu quả.
1. Hàm np.min() và np.max()
import numpy as np # Khai bao mang a = np.array([ [3,7,5], [8,4,3], [2,4,9] ]) print("Mang a ban dau") print(a) print("Gia tri NHO nhat theo truc ngang") print(np.amin(a,1)) print("Gia tri NHO nhat theo truc doc") print(np.amin(a,0)) print("Gia tri LON nhat theo truc ngang") print(np.amax(a,1)) print("Gia tri LON nhat theo truc doc") print(np.amax(a,0))
Kết quả:
Mang a ban dau [[3 7 5] [8 4 3] [2 4 9]] Gia tri NHO nhat theo truc ngang [3 3 2] Gia tri NHO nhat theo truc doc [2 4 3] Gia tri LON nhat theo truc ngang [7 8 9] Gia tri LON nhat theo truc doc [8 7 9]
2. Hàm np.ptp()
Hàm np.ptp() đóng một vai trò quan trọng trong thống kê bằng cách tìm ra Phạm vi của các số đã cho theo các trục được chỉ định. Phạm vi = giá trị lớn nhất – giá trị nhỏ nhất.
import numpy as np # Khai bao mang a = np.array([ [3,7,5], [8,4,3], [2,4,9] ]) print("Mang a ban dau") print(a) print("Pham vi cac so da cho theo truc ngang") print(np.ptp(a,1)) print("Pham vi cac so da cho theo truc doc") print(np.ptp(a,0))
Kết quả:
Mang a ban dau [[3 7 5] [8 4 3] [2 4 9]] Pham vi cac so da cho theo truc ngang [4 5 7] Pham vi cac so da cho theo truc doc [6 3 6]
3. Hàm np.percentile()
import numpy as np # Mang 2 chieu ban dau a = np.array([ [14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4] ]) print("Mang ban dau") print(a) # Tinh 50 phan tram trong mang a print("50 phan tram cua mang a ") print(np.percentile(a, 50)) # Tinh 50 phan tram cua mang theo chieu ngang print("50 phan tram cua mang a theo truc ngang") print(np.percentile(a, 50, axis = 1)) # Tinh 50 phan tram cua mang theo chieu doc print("50 phan tram cua mang a theo truc doc") print(np.percentile(a, 50, axis = 0))
Kết quả:
Mang ban dau [[14 17 12 33 44] [15 6 27 8 19] [23 2 54 1 4]] 50 phan tram cua mang a 15.0 50 phan tram cua mang a theo truc ngang [17. 15. 4.] 50 phan tram cua mang a theo truc doc [15. 6. 27. 8. 19.]
4. Hàm np.median()
Hàm np.median() được sử dụng để tính trung vị các phần tử có trong mảng Numpy theo trục được chỉ định trước. Để tìm được trung vị đầu tiên ta cần sắp xếp mảng từ bé đến lớn, sau đó chúng ta lấy ra giá trị trung vị bằng cách lấy phần tử ở giữa dãy số đó:
import numpy as np # Mang 2 chieu ban dau a = np.array([ [14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4] ]) print("Mang ban dau") print(a) # Tinh trung vi gia tri cua mang a print("Trung vi gia tri cua mang a ") print(np.median(a)) # Tinh trung vi gia tri cua mang theo truc ngang print("Trung vi gia tri mang theo truc ngang") print(np.median(a, axis = 1)) # Tinh trung vi gia tri cua mang theo truc doc print("Trung vi gia tri mang theo truc doc") print(np.median(a, axis = 0))
Kết quả:
Mang ban dau [[14 17 12 33 44] [15 6 27 8 19] [23 2 54 1 4]] Trung vi gia tri cua mang a 15.0 Trung vi gia tri mang theo truc ngang [17. 15. 4.] Trung vi gia tri mang theo truc doc [15. 6. 27. 8. 19.]
5. Hàm np.mean()
Hàm np.mean() được sử dụng để tính giá trị trung bình cộng (trung bình) của dữ liệu đã cho trong mảng dọc theo trục xác định.
import numpy as np # Mang 2 chieu ban dau a = np.array([ [14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4] ]) print("Mang ban dau") print(a) # Tinh trung binh gia tri cua mang a print("Trung binh gia tri cua mang a ") print(np.mean(a)) # Tinh trung binh gia tri cua mang theo truc ngang print("Trung binh gia tri mang theo truc ngang") print(np.mean(a, axis = 1)) # Tinh trung binh gia tri cua mang theo truc doc print("Trung binh gia tri mang theo truc doc") print(np.mean(a, axis = 0))
Kết quả:
Mang ban dau [[14 17 12 33 44] [15 6 27 8 19] [23 2 54 1 4]] Trung binh gia tri cua mang a 18.6 Trung binh gia tri mang theo truc ngang [24. 15. 16.8] Trung binh gia tri mang theo truc doc [17.33333333 8.33333333 31. 14. 22.33333333]
6. Hàm np.std()

import numpy as np # Mang 2 chieu ban dau a = np.array([ [14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4] ]) print("Mang ban dau") print(a) # Tinh do lech chuan cua mang a print("Do lech chuan cac gia tri cua mang a ") print(np.std(a)) # Tinh do lech chuan cua mang theo truc ngang print("Do lech chuan cac gia tri mang theo truc ngang") print(np.std(a, axis = 1)) # Tinh do lech chuan cua mang theo truc doc print("Do lech chuan cac gia tri mang theo truc doc") print(np.std(a, axis = 0))
Kết quả:
Mang ban dau [[14 17 12 33 44] [15 6 27 8 19] [23 2 54 1 4]] Do lech chuan cac gia tri cua mang a 14.934523762075575 Do lech chuan cac gia tri mang theo truc ngang [12.44186481 7.61577311 20.27214838] Do lech chuan cac gia tri mang theo truc doc [ 4.02768199 6.3420992 17.3781472 13.73559852 16.49915823]
7. Hàm np.var()
import numpy as np # Mang 2 chieu ban dau a = np.array([ [14, 17, 12, 33, 44], [15, 6, 27, 8, 19], [23, 2, 54, 1, 4] ]) print("Mang ban dau") print(a) # Tinh phuong sai cua mang a print("Phuong sai cua mang a ") print(np.var(a)) # Tinh phuong sai cua mang theo truc ngang print("Phuong sai cua mang theo truc ngang") print(np.var(a, axis = 1)) # Tinh phuong sai cua mang theo truc doc print("Phuong sai cua mang theo truc doc") print(np.var(a, axis = 0))
Kết quả:
Mang ban dau [[14 17 12 33 44] [15 6 27 8 19] [23 2 54 1 4]] Phuong sai cua mang a 223.04 Phuong sai cua mang theo truc ngang [154.8 58. 410.96] Phuong sai cua mang theo truc doc [ 16.22222222 40.22222222 302. 188.66666667 272.22222222]