Hướng dẫn dùng numpy.pi python
Trong khoảng thời gian vừa rồi tôi có cơ hội được làm việc bằng ngôn ngữ Python thông qua một dự án về sức khỏe của công ty. Sau một khoảng thời gian tìm hiểu, làm việc tôi nhận thấy đây là một ngôn ngữ quá mạnh mẽ, nó mạnh mẽ vì sự đa dụng của nó, nó có thể làm được mọi việc liên quan đến lập trình từ làm web, app hay game, nhưng điều khiến python nổi tiếng có lẽ đến từ việc nó có thể code được cả trong lĩnh vực phân tích khoa học dữ liệu, xây dựng trí tuệ nhân tạo. Một điều nữa cũng khiến Python được yêu thích đó là nó có một hệ sinh thái các thư viện hỗ trợ cực kì lớn. Nó lớn đến mức đôi khi chúng ta phải phân vân nên chọn sử dụng thư viện nào cho hợp lí. Show Trong số hàng triệu thư viện hỗ trợ Python thì có một thư viện lại gần như được đóng đinh mà bắt buộc lập trình viên nào khi làm việc với Python cũng cần phải tìm hiểu đó chính là thư viện NumPy. Trong bài ngày hôm nay tôi xin giới thiệu với các bạn về thư viện NumPy trong Python và cách sử dụng nó trong python. 1. Giới thiệu về thư viện NumPyNumpy (Numeric Python): là một thư viện toán học rât phổ biến và mạnh mẽ của Python. NumPy được trang bị các hàm số đã được tối ưu, cho phép làm việc hiệu quả với ma trận và mảng, đặc biệt là dữ liệu ma trận và mảng lớn với tốc độ xử lý nhanh hơn nhiều lần khi chỉ sử dụng Python đơn thuần. Nếu bạn muốn trở thành một lập trình viên khoa học dữ liệu chuyên sâu, bạn cần phải nắm rõ numpy. Đây là một trong những thư viện hữu ích nhất của python, đặc biệt là nếu bạn đang tìm hiểu về các con số. Vì phần lớn Khoa học Dữ liệu và Máy học xoay quanh Thống kê, nên việc thực hành trở nên quan trọng hơn nhiều. NumPy được phát triển bởi Jim Hugunin. Phiên bản ban đầu là Numarray được phát triển, có một số chức năng bổ sung. Năm 2005, Travis Oliphant đã tạo ra gói NumPy bằng cách kết hợp các tính năng của Numarray và gói Numeric. Sử dụng NumPy, lập trình viên có thể thực hiện các thao tác sau:
NumPy - Sự thay thế hoàn hảo cho MatLab NumPy thường được sử dụng cùng với các gói như SciPy (Python Scientific) và Mat-plotlib (thư viện vẽ đồ thị). Sự kết hợp này được sử dụng rộng rãi để thay thế cho MatLab, một nền tảng phổ biến cho tính toán kỹ thuật. Tuy nhiên, Python thay thế cho MatLab hiện được xem như một ngôn ngữ lập trình hoàn thiện và hiện đại hơn.Điều quan trọng hơn cả là Numpy là một thư viện mã nguồn mở, miễn phí so với MatLab là một thư viện mã nguồn đóng và phải trả phí . Cách cài đặt NumPyTrong bài này tôi sẽ thực hành trên ubuntu và Framework Django, nếu bạn đang chạy trên HĐH khác thì chỉ cần gg là đều có hướng dẫn chi tiết Đầu tiên mở Terminal lên và nhập
Bạn cần phải cài đặt Numpy thông qua pip Sau khi đã cài đặt xong NumPy, chúng ta cần import nó để sử dụng như các thư viện khác của Python để sử dụng các hàm số của NumPy:
Sau khi cài đặt xong chúng ta sẽ tìm hiểu về các kiểu dữ liệu trong Numpy 1. MảngMảng là một cấu trúc dữ liệu chứa một nhóm các phần tử. Thông thường, tất cả các phần tử này có cùng kiểu dữ liệu, chẳng hạn như số nguyên hoặc chuỗi. Chúng thường được sử dụng trong các chương trình để sắp xếp dữ liệu để một bộ giá trị liên quan có thể dễ dàng được sắp xếp hoặc tìm kiếm. Khi nói đến NumPy, một mảng là một cấu trúc dữ liệu trung tâm của thư viện. Đó là một lưới các giá trị và nó chứa thông tin về dữ liệu thô, cách xác định vị trí của một phần tử và cách diễn giải một phần tử. Nó có một lưới các phần tử có thể được lập chỉ mục theo nhiều cách khác nhau . Tất cả các phần tử có cùng kiểu, được gọi là kiểu mảng (kiểu dữ liệu). Một mảng có thể được lập chỉ mục bởi một bộ số nguyên không âm, bởi boolean, bởi một mảng khác hoặc bởi số nguyên. Thứ hạng của mảng là số thứ nguyên. Hình dạng của mảng là một loạt các số nguyên cho biết kích thước của mảng dọc theo mỗi chiều. Một cách chúng ta có thể khởi tạo mảng NumPy là từ danh sách Python lồng nhau. Một mảng được gọi là cấu trúc dữ liệu trung tâm của thư viện NumPy. Mảng trong NumPy được gọi là NumPy Array. Đối tượng quan trọng nhất được định nghĩa trong NumPy là một kiểu mảng N chiều được gọi là ndarray. Nó mô tả bộ sưu tập các mặt hàng cùng loại. Các mục trong bộ sưu tập có thể được truy cập bằng chỉ mục dựa trên số không. Mọi mục trong một ndarray có cùng kích thước khối trong bộ nhớ. Mỗi phần tử trong ndarray là một đối tượng của đối tượng kiểu dữ liệu (được gọi là dtype ). Bất kỳ mục nào được trích xuất từ đối tượng ndarray (bằng cách cắt) được đại diện bởi một đối tượng Python thuộc một trong các kiểu vô hướng mảng. Biểu đồ sau đây cho thấy mối quan hệ giữa ndarray, đối tượng kiểu dữ liệu (dtype) và kiểu vô hướng mảng: Một instance của ndarray có thể được xây dựng bằng các quy trình tạo mảng khác nhau được mô tả ở phần sau của hướng dẫn. Ndarray cơ bản được tạo bằng một array function trong NumPy như sau:
Nó tạo ra một ndarray từ bất kỳ đối tượng nào hiển thị giao diện mảng hoặc từ bất kỳ phương thức nào trả về một mảng.
Hàm tạo ở trên nhận các tham số sau:
Ví dụ để hiểu thêm:
Kết qủa : [1, 2, 3]
Kết quả : [[1, 2][3, 4]]
Kết quả : [[1, 2, 3, 4, 5]]
Kết qủa : [ 1.+0.j, 2.+0.j, 3.+0.j] Sự khác biệt giữa Python List và Numpy Array
Loại dữ liệu trong NumPyNumPy hỗ trợ nhiều kiểu số hơn nhiều so với Python. Bảng sau đây cho thấy các kiểu dữ liệu vô hướng khác nhau được xác định trong NumPy.
Đối tượng kiểu dữ liệu (dtype)Một đối tượng kiểu dữ liệu mô tả diễn giải khối bộ nhớ cố định tương ứng với một mảng, tùy thuộc vào các khía cạnh sau:
Thứ tự byte được quyết định bằng cách thêm tiền tố '<' hoặc '>' vào kiểu dữ liệu. '<' có nghĩa là mã hóa có giá trị nhỏ (ít quan trọng nhất được lưu trữ ở địa chỉ nhỏ nhất). '>' có nghĩa là mã hóa là big-endian (byte quan trọng nhất được lưu trữ ở địa chỉ nhỏ nhất). Một đối tượng dtype được xây dựng bằng cú pháp sau:
Các thông số là :
Array IndexingNumPy cung cấp một số cách để truy xuất phần tử trong mảng Indexing và slicing: Mỗi thành phần trong mảng 1 chiều tương ứng với một chỉ số. Chỉ số trong NumPy, cũng giống như chỉ số trong python, bắt đầu bằng 0. Nếu mảng 1 chiều có n phần tử thì các chỉ số chạy từ 0 đến n - 1. Và tương tự như list trong python, NumPy arrays cũng có thể được cắt (slicing).
Boolean array indexing:Cho phép bạn chọn ra các phần tử tùy ý của một mảng, thường được sử dụng để chọn ra các phần tử thỏa mãn điều kiện nào đó
Kết luậnNumPy là một thư viện toán học phổ biến và mạnh mẽ của Python. Nó cho phép làm việc hiệu quả với ma trận và mảng, đặc biệt là dữ liệu ma trận và mảng lớn với tốc độ xử lý nhanh hơn nhiều lần khi chỉ sử dụng Python thuần. Trong bài viết tôi đã giới thiệu cho bạn về NumPy, lợi ích của nó, cách cài đặt nó để sử dụng, tìm hiểu về Mảng tronng NumPy, kiểu dữ liệu trong NumPy. Trong bài viết tiếp theo chungs ta sẽ tiếp tục tìm hiểu về các kiểu dữ liệu khác trong NumPy Tham khảo: Numpy Tutorial Numpy.org Numpy Medium |