Numpy - Máy Học Cho Người Việt
Có thể bạn quan tâm

Tổng số lượt xem trang
Social Profiles





Follow
- BÀI 4: CHUẨN HÓA DỮ LIỆU Sau khi đã tìm hiểu dữ liệu qua thống kê và hình ảnh, chúng ta đã có thể bắt tay vào việc tiền xử lý dữ liệu. Sau bài học này, người học ...
-
BÀI 1: HIỂN THỊ DỮ LIỆU Sau bài học này, người học có khả năng: · Truy xuất dữ liệu trên các tệp (csv, .txt) · Dùng các thư viện để hiển thị ... -
Bài 5: SIMPLE LINEAR REGRESSION (HỒI QUY TUYẾN TÍNH MỘT BIẾN) Mô hình Linear Regression là một kĩ thuật thường được dùng trong các mô hình phân tích và dự đoán. Mô hình chỉ ra một quan hệ tuyến tính...
Người đóng góp cho blog
- Phan Trọng Đạt
- Superman Ox
- Unknown
- Unknown
- Unknown
Lưu trữ Blog
Labels
- libray for machine learning
- numpy
- python
- scikit-learn
- scipy
- sklearn
Blog Archive
Users
Thứ Năm, 1 tháng 6, 2017
Numpy
Mặc dù chúng tôi rất muốn đề cập tới thuật toán Máy học ngay, tuy nhiên để mọi người hiểu được, chúng ta buộc phải có một vài những kiến thức nhất định về công cụ để cài đặt các thuật toán đó. Do vậy, trong vài bài tới, chúng tôi sẽ tiếp tục giới thiệu những kiến thức nền tảng của Python và những thư viện để người đọc nắm được. Kiên nhẫn. Bữa tiệc chính sẽ tới! :-)
Có ứng dụng nào, từ nhỏ tới lớn, mà chúng ta không sử dụng mảng không? Hẳn nhiên mảng là một cấu trúc thường dùng nhất trong lập trình. Trong bài này, chúng tôi giới thiệu Numpy một thư viện rất rất quan trọng trong quá trình cài đặt mọi ứng dụng trong Python. Numpy (viết tắt của Nummerical Python) là một thư viện không thể thiếu khi chúng ta xây dựng các ứng dụng Máy học trên Python. Numpy cung cấp các đối tượng và phương thức để làm việc với mảng nhiều chiều và các phép toán đại số tuyến tính. Trong numpy, chiều của mảng gọi là axes; trong khi số chiều gọi là rank. Thư viện chính trong numpy là các đối tượng mảng (array). Mảng (array) tương tự như list ở Python với điều kiện là mọi phần tử trong array phải có cùng kiểu dữ liệu. Array có thể thao tác với số lượng lớn dữ liệu số, thường là float hay int, và hiệu quả hơn trên danh sách rất nhiều. Lớp thường dùng trong numpy là ndarray (n-dimentional array). Khai báo khi dùng thư viện nump. Có nhiều cách để khai báo Numpy: ·Sử dụng tất cả các đối tượng và hàm của numpy: import numpy Chúng ta gọi trực tiếp các hàm qua cú pháp: numpy.array([1,2,3]) ·Có thể dùng tất cả các đối tượng trong numpy from numpy import * Chúng ta gọi trực tiếp các hàm qua cú pháp array([1,2,3]) ·Để ngắn gọn, nhiều người cũng dùng tên giả cho numpy. Đây là cách thường dùng: import numpy as np Chúng ta gọi trực tiếp các hàm qua cú pháp: np.array([1,2,3]) Khởi tạo và xem thông tin mảng :
| import numpy as np a = np.array([1, 2, 3]) # Tạo ra mảng một chiều từ list |
| print (type(a)) # "<type 'numpy.ndarray'>"print (a.shape) # "(3,)"print (a[0], a[1], a[2]) # "1 2 3" a[0] = 5 |
| print (a) # "[5, 2, 3]" b = np.array([[1,2,3],[4,5,6]]) # Tạo ra mảng hai chiều từ listprint (b.shape) # "(2, 3)" |
| print (b.size) # "6": số phần từ trong mảngprint (b[0, 0], b[0, 1], b[1, 0]) # "1 2 4" |
| print (b) #"[[1 2 3] |
| # [4 5 6]]" |
| import numpy as np |
| u = np.arange(3.0) # Tạo ra mảng trong khoảng cho trướcprint (u) # "[ 0. 1. 2.]" |
| v = np.arange(3,7) |
| print (v) # "[ 3 4 5 6]" |
| a = np.zeros((2,2)) # Tạo ra mảng toàn số 0print (a) # "[[ 0. 0.] # [ 0. 0.]]" b = np.ones((1,2)) # Tạo ra mảng toàn số 1print (b) # "[[ 1. 1.]]" c = np.full((2,2), 7) # Tạo ra một mảng hằng sốprint (c) # "[[ 7. 7.] # [ 7. 7.]]" d = np.eye(2) # Tạo ma trận đơn vị 2x2 |
| print (d) # "[[ 1. 0.] # [ 0. 1.]]" e = np.random.random((2,2)) # Tạo ma trận 2x2, giá trị ngẫu nhiên trong [0,1)print (e) # Một khả năng: "[[ 0.91940167 0.08143941] # [ 0.68744134 0.87236687]]" |
| import numpy as np # Tạo ra mảng 2 chiều có kích thước (3, 4) # [[ 1 2 3 4] # [ 5 6 7 8] # [ 9 10 11 12]] a = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]]) row_r1 = a[1, :] # Truy cập vào hàng thứ 2, và tất cả các cộtrow_r2 = a[1:3, :] # Truy cập vào từ hàng 1 tới hàng thứ 2, và tất cả các cộtprint (row_r1, row_r1.shape) # "[5 6 7 8] (4,)"print (row_r2, row_r2.shape) # [[5 6 7 8] |
| # [9 10 11 12]] (2, 4)" |
| col_r1 = a[:, 1] col_r2 = a[:, 1:2]print (col_r1, col_r1.shape) # "[ 2 6 10] (3,)"print (col_r2, col_r2.shape) # "[[ 2] # [ 6] # [10]] (3, 1)" |
| import numpy as np x = np.array([[1,2],[3,4]], dtype=np.float64) y = np.array([[5,6],[7,8]], dtype=np.float64) # Cộng hay mảng trên sẽ cho kết quả |
| # [[ 6.0 8.0] # [10.0 12.0]] print (np.add(x, y)) # Trừ hai mảng trên sẽ cho kết quả # [[-4.0 -4.0] # [-4.0 -4.0]]print (np.subtract(x, y)) # Thực hiện phép nhân trên 2 mảng # [[ 5.0 12.0] # [21.0 32.0]] print (np.multiply(x, y)) |
| # Thực hiện phép chia trên 2 mảng # [[ 0.2 0.33333333] # [ 0.42857143 0.5 ]] print (np.divide(x, y)) # Thực hiện phép khai căn bậc 2 trên mảng x # [[ 1. 1.41421356] # [ 1.73205081 2. ]] print (np.sqrt(x)) |
| import numpy as np x = np.array([[1,2],[3,4]])print (np.sum(x)) # "10": Tổng các phần tử print (np.sum(x, axis=0)) # "[4 6]": Tổng mỗi cột print (np.sum(x, axis=1)) # "[3 7]": Tổng mỗi hàng |
| import numpy as np x = np.array([[1,2,3], [4, 5, 6]]) |
| print (x) # "[[1 2 3] # [4 5 6]]"print (x.T) # "[[1 4] # [2 5]]" # [3 6]]" # Khi mảng của chúng ta là một chiều thì phép toán không tác dụngv = np.array([1,2,3])print (v) # "[1 2 3]"print (v.T) # "[1 2 3]" |
| import numpy as np x = np.array([[1,2],[3,4]]) y = np.array([[5,6],[7,8]]) v = np.array([9,10]) w = np.array([11,12]) |
| ###### Tích trong hai ma trận ###### print (np.dot(v, w)) # Tích trong, cho kết quả: 219 = 9.11+10.12print (np.dot(x, v)) # Tích trong, cho kết quả: [29 67] |
| ###### Tích của hai ma trận ###### print (np.matmul(x,y)) # Nhân hai ma trận # [[19 22] # [43 50]] print (np.matmul(x,v.T)) # Nhân hai ma trận # [29 67]print (np.matmul(v,x)) # Nhân hai ma trận # [39 58] |
| ###### Tích tương ứng (elementwise) hai ma trận ######print (np.multiply(x,y)) # [[5 12] # [21 32]] |
| import numpy as np |
| ###### Chuyển từ kiểu list sang array ###### |
| a = [1, 2] # a là một danh sách print (a) # [1, 2]print (type(a)) # <type 'list'> a =np.asarray(a) print (a) # [1 2]print (type(a)) # <type 'numpy.ndarray'> |
| ###### Chuyển đổi kích thước của mảng và giữ nguyên dữ liệu ###### |
| a = np.arange(6)print (a) # [0 1 2 3 4 5] |
| b = a.reshape((3, 2))print (b) # [[0 1] |
| # [2 3] |
| # [4 5]] c = b.reshape((2, 3))print (c) # [[0 1 2] |
| # [3 4 5]] d = np.reshape(c, 6)print (d) # [0 1 2 3 4 5] |
| e = np.reshape(d, (3,2)) print (e) # [[0 1] |
| # [2 3] |
| # [4 5]] |
| ## chuyển mảng sang mảng một chiều |
| a = np.array([[1,2,3], [3,4]])print (a.flatten()) # [[1, 2, 3] [3, 4]] |
| ###### Chèn giá trị vào trước cột/hàng được chỉ định ###### |
| a1 = np.array([[1, 1], [2, 2], [3, 3]])print (np.insert(a1, 1, 5)) # [1 5 1 2 2 3 3] |
| # chèn vào cộtprint (np.insert(a1, 1, 5, axis=1))# [[1 5 1] |
| # [2 5 2] |
| # [3 5 3]] |
| # chèn vào hàng |
| print (np.insert(a1, 1, 5, axis=0))# [[1 1] |
| # [5 5] |
| # [2 2] |
| # [3 3]] |
0 nhận xét:
Đăng ký: Đăng Nhận xét (Atom) Copyright © Máy học cho người Việt | Powered by [email protected] Design by NewWpThemes | Blogger Theme by Lasantha - Free Blogger ThemesNewBloggerThemes.comTừ khóa » Np.asarray Là Gì
-
Bài 6: Mảng Từ Dữ Liệu Có Sẵn - Numpy Trong Python - VnCoder
-
Sự Khác Biệt Giữa Hàm Array () Và Asarray () Của Numpy Là Gì?
-
array() In Python - GeeksforGeeks
-
Numpy, Array Và Asarray Phân Biệt - Python - Mofun IT
-
Python NumPy Tutorial - Học NumPy Arrays Với Các Ví Dụ - Viblo
-
Giới Thiệu Về Numpy (một Thư Viện Chủ Yếu Phục Vụ Cho Khoa Học ...
-
Sử Dụng Array Trong NumPy - W3seo
-
Python — Làm Thế Nào để Làm Tròn Mảng Numpy?
-
Python — Cách Tốt Hơn để Trộn Hai Mảng Numpy Trong Unison
-
Xử Lý Dữ Liệu Với Pandas Trong Python - CodeLearn
-
Thắc Mắc Về Code Hiển Thị Dữ Liệu Trên đồ Thị (K-Means)
-
List To Matrix Python Numpy
-
Bài 21 - Tiền Xử Lý ảnh OpenCV