Mảng để hình ảnh python

Trong khoảng thời gian vừa rồi tôi có cơ hội đang 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ì tính đa dụng của nó, nó có thể làm được mọi công việc liên quan đến lập trình từ làm web, ứng dụng hay . Một điều nữa cũng khiến Python được yêu thích đó là nó có một hệ thống sinh thái các thư viện hỗ trợ cực kỳ lớn. Nó lớn đến mức tăng gấp đô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ý

Trong số hàng triệu thư viện hỗ trợ Python thì có một thư viện lại gần như đã đóng cửa 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 xem đó chính là thư viện NumPy. Trong bài viết 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 NumPy

Numpy [Trăn số]. là một thư viện toán học phổ biến và mạnh mẽ của Python. NumPy được trang bị các hàm số đã được ưu tiên tối đa, cho phép thực hiện 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 để thực hiện các thao tác sau

  • Các phép toán học và logic trên mảng

  • Biến đổi Fourier và các quy trình để thao tác hình dạng

  • Phép toán liên quan đến đại số tuyến tính. NumPy tích hợp sẵn các hàm cho đại số tuyến tính và tạo ngẫu nhiên số

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 hảo và hiện đại hơn. Điều quan trọng hơn cả là Numpy là thư viện mã nguồn mở, miễn phí vì vậy MatLab là thư viện mã nguồn đóng và phải trả phí

Cách cài đặt NumPy

Trong bài viết này mình sẽ thực thi trên ubuntu và Framework Django, nếu bạn đang chạy trên hệ điều hành khác thì chỉ cần gg là đều có hướng dẫn chi tiết

First open Terminal up and enter

sudo apt install python3-pip
pip install numpy

You must install Numpy information qua pip

Sau khi cài đặt xong NumPy, chúng ta cần nhập 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

import numpy as np

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ảng

Mả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 đều 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 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 thiết 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 thanh, bởi boolean, bởi một mảng khác hoặc bởi một số nguyên. Thứ hạng của mảng là thứ nguyên số. Dạng của mảng là một chuỗi 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ể truy cập được bằng cách 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 kiểu dữ liệu đối tượng [đượ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. Sau đây biểu đồ 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 phiên bản 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 hàm mảng trong NumPy như sau

numpy.array

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

numpy.array[object, dtype = None, copy = True, order = None, subok = False, ndmin = 0]

Hàm tạo ở trên các tham số nhận được sau

STT Mô tả thông số 1 đối tượng - Bất kỳ đối tượng nào hiển thị phương thức giao diện mảng sẽ trả về một mảng hoặc bất kỳ chuỗi [dọc nhau] nào. 2dtype - Kiểu dữ liệu mong muốn của mảng, tùy chọn3copy - Không bắt buộc. Theo mặc định [true], các đối tượng được sao chép4order - C [hàng chính] hoặc F [cột chính] hoặc A [bất kỳ] [default]5subok - Theo mặc định, mảng trả về buộc phải là mảng cơ sở. Nếu đúng, các lớp con được chuyển qua6ndmin - Chỉ định kích thước tối thiểu của mảng kết quả

Ví dụ để hiểu thêm

import numpy as np 
a = np.array[[1,2,3]] 
print a

Kết quả. [1, 2, 3]

# more than one dimensions 
import numpy as np 
a = np.array[[[1, 2], [3, 4]]] 
print a

Kết quả. [[1, 2][3, 4]]

# minimum dimensions 
import numpy as np 
a = np.array[[1, 2, 3,4,5], ndmin = 2] 
print a

Kết quả. [[1, 2, 3, 4, 5]]

Bản thử trực tiếp
# dtype parameter 
import numpy as np 
a = np.array[[1, 2, 3], dtype = complex] 
print a

Kết quả. [ 1. +0. j, 2. +0. j, 3. +0. j]

Sự khác biệt giữa Python List và Numpy Array

  • Danh sách Python có thể chứa các phần tử với các kiểu dữ liệu khác nhau trong khi các phần tử của Numpy Array luôn đồng nhất [cùng một kiểu dữ liệu]
  • Python Array nhanh hơn và nhỏ gọn hơn Danh sách Python
    • NumPy Array sử dụng bộ nhớ cố định để lưu trữ dữ liệu và ít bộ nhớ hơn Python List
    • Bộ nhớ phát liền kề trong NumPy Array

Loại dữ liệu trong NumPy

NumPy supports many type more than many so với Python. Sau đây bảng cho thấy các kiểu dữ liệu vô hướng khác nhau đã được xác định trong NumPy

STTType data & description1bool_ - Boolean [Truy cập hoặc Sai] được lưu trữ dưới dạng byte2int_ - Kiểu số nguyên mặc định [giống C long; thường là int64 hoặc int32]3intc - Giống với int C [thường là int32 hoặc int64] . bit dấu, số phụ 5 bit, phần giá trị 10 bit15float32 - float. bit dấu, số phụ 8 bit, phần giá trị 23 bit16float64 - float. dấu bit, số phụ 11 bit, phần giá trị 52 bit17complex_ - Viết tắt cho complex12818complex64 - Số phức, được biểu diễn bằng hai số thực 32 bit [thành phần thực và ảo]19complex128 - Số phức, được biểu thị bằng hai số thực

Data object type [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

  • Loại dữ liệu [số nguyên, đối tượng float hoặc Python]
  • Data size
  • Byte thứ tự [little-endian hoặc big-endian]
  • Trong trường hợp kiểu có cấu trúc, tên của các trường, kiểu dữ liệu của từng trường và một phần của bộ nhớ khối được lấy theo từng trường
  • If data type is an array con, shape and data type of it

Thứ tự byte được quyết định bằng cách thêm tiền tố '' vào kiểu dữ liệu. '' 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

________số 8

The information is

  • numpy.array
    
    2 - Được chuyển đổi thành kiểu dữ liệu đối tượng

  • numpy.array
    
    3 - Nếu đúng, hãy thêm phần đệm vào trường để làm cho trường tương tự như C-struct

  • numpy.array
    
    4 - Tạo một bản sao mới của đối tượng dtype. Nếu sai, kết quả là tham chiếu đến đối tượng kiểu dữ liệu nội trang

Lập chỉ mục mảng

NumPy cung cấp một số cách để truy xuất phần tử trong mảng

Lập chỉ mục và cắt lát. Mỗi thành phần trong mảng 1 chiều tương ứng với một số chỉ. Chỉ số trong NumPy, cũng giống như chỉ số trong python, bắt đầu bằng 0. If a array 1 direction has n element, the only number run from 0 to n - 1. Và tương tự như danh sách trong python, mảng NumPy cũng có thể được cắt [cắt]

import numpy as np
2

Lập chỉ mục mảng Boolean

Cho phép bạn chọn ra các tùy chọn phần tử của một mảng, thường được sử dụng để chọn ra các phần tử có điều kiện cụ thể nào đó

import numpy as np
0Kết luận

NumPy 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 túy

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 trong NumPy, kiểu dữ liệu trong NumPy. Trong bài viết tiếp theo chung ta sẽ tiếp tục tìm hiểu về các loại dữ liệu khác nhau trong NumPy

Chủ Đề