Chuyển đổi danh sách 2D thành danh sách 3D Python

Chúng ta có thể định hình lại mảng 1D 8 phần tử thành 4 phần tử trong mảng 2D 2 hàng nhưng chúng ta không thể định hình lại nó thành mảng 2D 3 phần tử 3 hàng vì điều đó sẽ yêu cầu 3x3 = 9 phần tử

Ví dụ

Hãy thử chuyển đổi mảng 1D có 8 phần tử thành mảng 2D có 3 phần tử trong mỗi chiều (sẽ phát sinh lỗi)

nhập numpy dưới dạng np

mảng = np. mảng([1, 2, 3, 4, 5, 6, 7, 8])

mớiarr = mảng. định hình lại(3, 3)

in(newarr)

Tự mình thử »


Trả về Sao chép hoặc Xem?

Ví dụ

Kiểm tra xem mảng được trả về là bản sao hay chế độ xem

nhập numpy dưới dạng np

mảng = np. mảng([1, 2, 3, 4, 5, 6, 7, 8])

in (mảng. định hình lại(2, 4). căn cứ)

Tự mình thử »

Ví dụ trên trả về mảng ban đầu, vì vậy nó là một dạng xem


Thứ nguyên không xác định

Bạn được phép có một thứ nguyên "không xác định"

Có nghĩa là bạn không phải chỉ định một số chính xác cho một trong các kích thước trong phương thức định hình lại

Vượt qua ____305_______ làm giá trị và NumPy sẽ tính toán số này cho bạn

Ví dụ

Chuyển mảng 1D có 8 phần tử thành mảng 3D có 2 phần tử

nhập numpy dưới dạng np

mảng = np. mảng([1, 2, 3, 4, 5, 6, 7, 8])

mớiarr = mảng. định hình lại (2, 2, -1)

in(newarr)

Tự mình thử »

Ghi chú. Chúng tôi không thể chuyển -1 sang nhiều hơn một chiều


Làm phẳng các mảng

Làm phẳng mảng có nghĩa là chuyển mảng nhiều chiều thành mảng 1 chiều

Chúng ta có thể sử dụng reshape(-1) để làm điều này

Ví dụ

Chuyển đổi mảng thành mảng 1D

nhập numpy dưới dạng np

mảng = np. mảng([[1, 2, 3], [4, 5, 6]])

mớiarr = mảng. định hình lại (-1)

in(newarr)

Tự mình thử »

Ghi chú. Có rất nhiều hàm để thay đổi hình dạng của các mảng trong numpy flatten, ravel và cũng để sắp xếp lại các phần tử rot90, flip, fliplr, flipud, v.v. Chúng thuộc phần Trung cấp đến Nâng cao của numpy

Chào mừng bạn đến với hướng dẫn tuyệt đối cho người mới bắt đầu về NumPy. Nếu bạn có nhận xét hoặc đề xuất, vui lòng liên hệ

Chào mừng đến với NuPy

NumPy (Numerical Python) là một thư viện mã nguồn mở Python được sử dụng trong hầu hết các lĩnh vực khoa học và kỹ thuật. Đó là tiêu chuẩn chung để làm việc với dữ liệu số trong Python và là cốt lõi của hệ sinh thái Python và PyData khoa học. Người dùng NumPy bao gồm tất cả mọi người từ lập trình viên mới bắt đầu đến các nhà nghiên cứu có kinh nghiệm thực hiện nghiên cứu và phát triển khoa học và công nghiệp hiện đại. API NumPy được sử dụng rộng rãi trong Pandas, SciPy, Matplotlib, scikit-learning, scikit-image và hầu hết các gói Python khoa học và khoa học dữ liệu khác

Thư viện NumPy chứa các cấu trúc dữ liệu ma trận và mảng đa chiều (bạn sẽ tìm thêm thông tin về điều này trong các phần sau). Nó cung cấp ndarray, một đối tượng mảng n chiều đồng nhất, với các phương thức để hoạt động hiệu quả trên nó. NumPy có thể được sử dụng để thực hiện nhiều phép toán trên mảng. Nó bổ sung các cấu trúc dữ liệu mạnh mẽ vào Python để đảm bảo tính toán hiệu quả với các mảng và ma trận, đồng thời nó cung cấp một thư viện khổng lồ gồm các hàm toán học cấp cao hoạt động trên các mảng và ma trận này

Học nhiều hơn về

Cài đặt NumPy

Để cài đặt NumPy, chúng tôi thực sự khuyên bạn nên sử dụng bản phân phối Python khoa học. Nếu bạn đang tìm hướng dẫn đầy đủ để cài đặt NumPy trên hệ điều hành của mình, hãy xem Cài đặt NumPy

Nếu bạn đã có Python, bạn có thể cài đặt NumPy với

conda install numpy

hoặc

pip install numpy

Nếu chưa có Python, bạn có thể cân nhắc sử dụng Anaconda. Đó là cách dễ nhất để bắt đầu. Điểm hay khi nhận bản phân phối này là bạn không cần phải lo lắng quá nhiều về việc cài đặt riêng NumPy hoặc bất kỳ gói chính nào mà bạn sẽ sử dụng để phân tích dữ liệu của mình, như pandas, Scikit-Learn, v.v.

Cách nhập NumPy

Để truy cập NumPy và các chức năng của nó, hãy nhập nó vào mã Python của bạn như thế này

import numpy as np

Chúng tôi rút ngắn tên đã nhập thành

pip install numpy
34 để dễ đọc mã hơn bằng cách sử dụng NumPy. Đây là một quy ước được áp dụng rộng rãi mà bạn nên tuân theo để bất kỳ ai làm việc với mã của bạn đều có thể dễ dàng hiểu được

Đọc mã ví dụ

Nếu bạn chưa thấy thoải mái khi đọc các hướng dẫn chứa nhiều mã, bạn có thể không biết cách diễn giải một khối mã trông như thế này

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)

Nếu bạn chưa quen với phong cách này, nó rất dễ hiểu. Nếu bạn thấy

pip install numpy
35, thì bạn đang xem đầu vào hoặc mã mà bạn sẽ nhập. Mọi thứ không có
pip install numpy
35 phía trước đều là đầu ra hoặc kết quả chạy mã của bạn. Đây là phong cách bạn nhìn thấy khi chạy
pip install numpy
37 trên dòng lệnh, nhưng nếu bạn đang sử dụng IPython, bạn có thể thấy một phong cách khác. Lưu ý rằng nó không phải là một phần của mã và sẽ gây ra lỗi nếu được nhập hoặc dán vào trình bao Python. Nó có thể được nhập hoặc dán một cách an toàn vào lớp vỏ IPython;

Sự khác biệt giữa danh sách Python và mảng NumPy là gì?

NumPy cung cấp cho bạn rất nhiều cách nhanh chóng và hiệu quả để tạo mảng và thao tác dữ liệu số bên trong chúng. Mặc dù danh sách Python có thể chứa các loại dữ liệu khác nhau trong một danh sách, nhưng tất cả các phần tử trong mảng NumPy phải đồng nhất. Các phép toán được thực hiện trên mảng sẽ cực kỳ kém hiệu quả nếu các mảng không đồng nhất

Tại sao nên sử dụng NumPy?

Mảng NumPy nhanh hơn và nhỏ gọn hơn danh sách Python. Một mảng tiêu thụ ít bộ nhớ hơn và thuận tiện khi sử dụng. NumPy sử dụng ít bộ nhớ hơn để lưu trữ dữ liệu và nó cung cấp cơ chế chỉ định các loại dữ liệu. Điều này cho phép mã được tối ưu hóa hơn nữa

Mảng là gì?

Mảng là cấu trúc dữ liệu trung tâm của thư viện NumPy. Mảng 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í phần tử và cách diễn giải phần tử. Nó có một lưới các phần tử có thể được lập chỉ mục trong. Các phần tử đều cùng kiểu, được gọi là mảng

pip install numpy
39

Một mảng có thể được lập chỉ mục bởi một bộ các số nguyên không âm, bởi booleans, bởi một mảng khác hoặc bởi các số nguyên.

pip install numpy
40 của mảng là số chiều.
pip install numpy
41 của mảng là một bộ số nguyên cho biết kích thước của mảng 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, sử dụng danh sách lồng nhau cho dữ liệu hai chiều trở lên

Ví dụ

>>> a = np.array([1, 2, 3, 4, 5, 6])

hoặc

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

Chúng ta có thể truy cập các phần tử trong mảng bằng dấu ngoặc vuông. Khi bạn đang truy cập các phần tử, hãy nhớ rằng việc lập chỉ mục trong NumPy bắt đầu từ 0. Điều đó có nghĩa là nếu bạn muốn truy cập phần tử đầu tiên trong mảng của mình, bạn sẽ truy cập phần tử “0”

>>> print(a[0])
[1 2 3 4]

Thông tin thêm về mảng

Phần này bao gồm

pip install numpy
42,
pip install numpy
43,
pip install numpy
44,
pip install numpy
45,
pip install numpy
46


Đôi khi bạn có thể nghe thấy một mảng được gọi là “ndarray”, viết tắt của “mảng N chiều. ” Mảng N chiều đơn giản là một mảng có số chiều bất kỳ. Bạn cũng có thể nghe thấy mảng 1-D hoặc mảng một chiều, mảng 2-D hoặc mảng hai chiều, v.v. Lớp NumPy

pip install numpy
44 được sử dụng để biểu diễn cả ma trận và vectơ. Vectơ là một mảng có một chiều (không có sự khác biệt giữa vectơ hàng và cột), trong khi ma trận đề cập đến một mảng có hai chiều. Đối với các mảng chiều 3-D hoặc cao hơn, thuật ngữ tensor cũng thường được sử dụng

Các thuộc tính của một mảng là gì?

Một mảng thường là một thùng chứa các phần tử có kích thước cố định cùng loại và cùng kích thước. Số lượng kích thước và mục trong một mảng được xác định bởi hình dạng của nó. Hình dạng của một mảng là một bộ các số nguyên không âm xác định kích thước của mỗi chiều

Trong NumPy, kích thước được gọi là trục. Điều này có nghĩa là nếu bạn có một mảng 2D trông như thế này

[[0., 0., 0.],
 [1., 1., 1.]]

Mảng của bạn có 2 trục. Trục thứ nhất có chiều dài là 2 và trục thứ hai có chiều dài là 3

Giống như trong các đối tượng chứa Python khác, nội dung của một mảng có thể được truy cập và sửa đổi bằng cách lập chỉ mục hoặc cắt mảng. Không giống như các đối tượng vùng chứa điển hình, các mảng khác nhau có thể chia sẻ cùng một dữ liệu, vì vậy những thay đổi được thực hiện trên một mảng có thể hiển thị trong một mảng khác

Các thuộc tính của mảng phản ánh thông tin nội tại của chính mảng đó. Nếu bạn cần lấy hoặc thậm chí thiết lập các thuộc tính của một mảng mà không cần tạo một mảng mới, bạn có thể thường xuyên truy cập một mảng thông qua các thuộc tính của nó

và tìm hiểu về

Cách tạo mảng cơ bản

Phần này bao gồm

pip install numpy
48,
pip install numpy
49,
pip install numpy
50,
pip install numpy
51,
pip install numpy
52,
pip install numpy
53,
pip install numpy
39


Để tạo một mảng NumPy, bạn có thể sử dụng hàm

pip install numpy
48

Tất cả những gì bạn cần làm để tạo một mảng đơn giản là chuyển một danh sách cho nó. Nếu chọn, bạn cũng có thể chỉ định loại dữ liệu trong danh sách của mình.

>>> import numpy as np
>>> a = np.array([1, 2, 3])

Bạn có thể hình dung mảng của mình theo cách này

Chuyển đổi danh sách 2D thành danh sách 3D Python

Xin lưu ý rằng những hình ảnh trực quan này nhằm đơn giản hóa các ý tưởng và cung cấp cho bạn hiểu biết cơ bản về các khái niệm và cơ chế của NumPy. Mảng và hoạt động của mảng phức tạp hơn nhiều so với những gì được ghi lại ở đây

Bên cạnh việc tạo một mảng từ một chuỗi các phần tử, bạn có thể dễ dàng tạo một mảng chứa đầy

pip install numpy
56

>>> np.zeros(2)
array([0., 0.])

Hoặc một mảng chứa đầy

pip install numpy
57

pip install numpy
0

Hoặc thậm chí là một mảng trống. Hàm

pip install numpy
58 tạo một mảng có nội dung ban đầu là ngẫu nhiên và phụ thuộc vào trạng thái của bộ nhớ. Lý do sử dụng
pip install numpy
58 trên
pip install numpy
60 (hoặc thứ gì đó tương tự) là tốc độ - chỉ cần đảm bảo điền mọi yếu tố sau đó

pip install numpy
1

Bạn có thể tạo một mảng với nhiều phần tử

pip install numpy
2

Và cả mảng chứa dãy các khoảng cách đều nhau. Để làm điều này, bạn sẽ chỉ định số đầu tiên, số cuối cùng và kích thước bước

pip install numpy
3

Bạn cũng có thể sử dụng

pip install numpy
53 để tạo một mảng với các giá trị được đặt cách nhau tuyến tính trong một khoảng xác định

pip install numpy
4

Chỉ định loại dữ liệu của bạn

Mặc dù kiểu dữ liệu mặc định là dấu phẩy động (

pip install numpy
62), nhưng bạn có thể chỉ định rõ ràng kiểu dữ liệu nào bạn muốn bằng cách sử dụng từ khóa
pip install numpy
39

pip install numpy
5

Thêm, xóa và sắp xếp các phần tử

Phần này bao gồm

pip install numpy
64,
pip install numpy
65


Sắp xếp một phần tử rất đơn giản với

pip install numpy
64. Bạn có thể chỉ định trục, loại và thứ tự khi gọi hàm

Nếu bạn bắt đầu với mảng này

pip install numpy
6

Bạn có thể nhanh chóng sắp xếp các số theo thứ tự tăng dần với

pip install numpy
7

Ngoài sắp xếp, trả về một bản sao đã sắp xếp của một mảng, bạn có thể sử dụng

  • , là cách sắp xếp gián tiếp dọc theo một trục xác định,

  • , đây là cách sắp xếp ổn định gián tiếp trên nhiều khóa,

  • , sẽ tìm các phần tử trong một mảng được sắp xếp và

  • , đó là một sắp xếp một phần

Để đọc thêm về cách sắp xếp một mảng, hãy xem.

Nếu bạn bắt đầu với những mảng này

pip install numpy
8

Bạn có thể nối chúng với

pip install numpy
65

pip install numpy
9

Hoặc, nếu bạn bắt đầu với những mảng này

import numpy as np
0

Bạn có thể nối chúng với

import numpy as np
1

Để xóa các phần tử khỏi một mảng, thật đơn giản khi sử dụng chỉ mục để chọn các phần tử mà bạn muốn giữ lại

Để đọc thêm về concatenate, xem.

Làm thế nào để bạn biết hình dạng và kích thước của một mảng?

Phần này bao gồm

pip install numpy
74,
pip install numpy
75,
pip install numpy
76


pip install numpy
74 sẽ cho bạn biết số lượng trục hoặc kích thước của mảng

pip install numpy
75 sẽ cho bạn biết tổng số phần tử của mảng. Đây là sản phẩm của các phần tử của hình dạng của mảng

pip install numpy
76 sẽ hiển thị một bộ số nguyên cho biết số lượng phần tử được lưu trữ dọc theo mỗi chiều của mảng. Ví dụ: nếu bạn có một mảng 2-D với 2 hàng và 3 cột, hình dạng của mảng là
pip install numpy
80

Ví dụ: nếu bạn tạo mảng này

import numpy as np
2

Để tìm số chiều của mảng, hãy chạy

import numpy as np
3

Để tìm tổng số phần tử trong mảng, hãy chạy

import numpy as np
4

Và để tìm hình dạng của mảng của bạn, hãy chạy

import numpy as np
5

Bạn có thể định hình lại một mảng?

Phần này bao gồm

pip install numpy
81


Đúng

Sử dụng

pip install numpy
81 sẽ tạo một hình dạng mới cho một mảng mà không thay đổi dữ liệu. Chỉ cần nhớ rằng khi bạn sử dụng phương thức định hình lại, mảng bạn muốn tạo cần phải có cùng số lượng phần tử như mảng ban đầu. Nếu bạn bắt đầu với một mảng có 12 phần tử, bạn sẽ cần đảm bảo rằng mảng mới của bạn cũng có tổng cộng 12 phần tử

Nếu bạn bắt đầu với mảng này

import numpy as np
6

Bạn có thể sử dụng

pip install numpy
83 để định hình lại mảng của mình. Ví dụ: bạn có thể định hình lại mảng này thành một mảng có ba hàng và hai cột

import numpy as np
7

Với

pip install numpy
84, bạn có thể chỉ định một số tham số tùy chọn

import numpy as np
8

pip install numpy
85 là mảng cần định hình lại

pip install numpy
86 là hình dạng mới mà bạn muốn. Bạn có thể chỉ định một số nguyên hoặc một bộ số nguyên. Nếu bạn chỉ định một số nguyên, kết quả sẽ là một mảng có độ dài đó. Hình dạng phải tương thích với hình dạng ban đầu

pip install numpy
87
pip install numpy
88 có nghĩa là đọc/ghi các phần tử sử dụng thứ tự chỉ mục giống C,
pip install numpy
89 nghĩa là đọc/ghi các phần tử sử dụng thứ tự chỉ mục giống Fortran,
pip install numpy
90 có nghĩa là đọc/ghi các phần tử theo thứ tự chỉ mục giống Fortran nếu a là tiếp giáp Fortran . (Đây là thông số tùy chọn và không cần chỉ định. )

Nếu bạn muốn tìm hiểu thêm về đơn hàng C và Fortran, bạn có thể. Về cơ bản, các lệnh C và Fortran phải thực hiện với cách các chỉ số tương ứng với thứ tự mà mảng được lưu trữ trong bộ nhớ. Trong Fortran, khi di chuyển qua các phần tử của mảng hai chiều khi nó được lưu trữ trong bộ nhớ, chỉ mục đầu tiên là chỉ mục thay đổi nhanh nhất. Khi chỉ mục đầu tiên di chuyển sang hàng tiếp theo khi nó thay đổi, ma trận được lưu trữ từng cột một. Đây là lý do tại sao Fortran được coi là ngôn ngữ chính của Cột. Mặt khác, trong C, chỉ số cuối cùng thay đổi nhanh nhất. Ma trận được lưu trữ theo hàng, làm cho nó trở thành ngôn ngữ Hàng chính. Những gì bạn làm cho C hoặc Fortran phụ thuộc vào việc duy trì quy ước lập chỉ mục hay không sắp xếp lại dữ liệu quan trọng hơn

.

Cách chuyển đổi mảng 1D thành mảng 2D (cách thêm trục mới vào mảng)

Phần này bao gồm

pip install numpy
91,
pip install numpy
92


Bạn có thể sử dụng

pip install numpy
91 và
pip install numpy
92 để tăng kích thước của mảng hiện tại của mình

Sử dụng

pip install numpy
91 sẽ tăng kích thước mảng của bạn lên một kích thước khi được sử dụng một lần. Điều này có nghĩa là mảng 1D sẽ trở thành mảng 2D, mảng 2D sẽ trở thành mảng 3D, v.v.

Ví dụ: nếu bạn bắt đầu với mảng này

import numpy as np
9

Bạn có thể sử dụng

pip install numpy
91 để thêm một trục mới

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
0

Bạn có thể chuyển đổi một mảng 1D một cách rõ ràng bằng vectơ hàng hoặc vectơ cột bằng cách sử dụng

pip install numpy
91. Ví dụ: bạn có thể chuyển đổi mảng 1D thành vectơ hàng bằng cách chèn một trục dọc theo chiều thứ nhất

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
1

Hoặc, đối với một vectơ cột, bạn có thể chèn một trục dọc theo chiều thứ hai

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
2

Bạn cũng có thể mở rộng một mảng bằng cách chèn một trục mới tại một vị trí đã chỉ định với

pip install numpy
92

Ví dụ: nếu bạn bắt đầu với mảng này

import numpy as np
9

Bạn có thể sử dụng

pip install numpy
92 để thêm một trục ở vị trí chỉ số 1 với

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
4

Bạn có thể thêm một trục ở vị trí chỉ số 0 với

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
5

Tìm thêm thông tin về và

import numpy as np
00 tại

Lập chỉ mục và cắt lát

Bạn có thể lập chỉ mục và cắt các mảng NumPy giống như cách bạn có thể cắt các danh sách Python

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
6

Bạn có thể hình dung nó theo cách này

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn có thể muốn lấy một phần của mảng hoặc các phần tử mảng cụ thể để sử dụng trong phân tích sâu hơn hoặc các hoạt động bổ sung. Để làm điều đó, bạn sẽ cần tập hợp con, cắt và/hoặc lập chỉ mục cho các mảng của mình

Nếu bạn muốn chọn các giá trị từ mảng của mình đáp ứng các điều kiện nhất định, thì thật đơn giản với NumPy

Ví dụ: nếu bạn bắt đầu với mảng này

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
7

Bạn có thể dễ dàng in tất cả các giá trị trong mảng nhỏ hơn 5

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
8

Ví dụ, bạn cũng có thể chọn các số bằng hoặc lớn hơn 5 và sử dụng điều kiện đó để lập chỉ mục cho một mảng

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
9

Có thể chọn các phần tử chia hết cho 2

>>> a = np.array([1, 2, 3, 4, 5, 6])
0

Hoặc bạn có thể chọn các phần tử thỏa mãn hai điều kiện bằng cách sử dụng toán tử

import numpy as np
02 và
import numpy as np
03

>>> a = np.array([1, 2, 3, 4, 5, 6])
1

Bạn cũng có thể sử dụng các toán tử logic & và. để trả về các giá trị boolean xác định xem các giá trị trong một mảng có đáp ứng một điều kiện nhất định hay không. Điều này có thể hữu ích với các mảng chứa tên hoặc các giá trị phân loại khác

>>> a = np.array([1, 2, 3, 4, 5, 6])
2

Bạn cũng có thể sử dụng

import numpy as np
04 để chọn các phần tử hoặc chỉ số từ một mảng

Bắt đầu với mảng này

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

Bạn có thể sử dụng

import numpy as np
04 để in các chỉ số của các phần tử, chẳng hạn như nhỏ hơn 5

>>> a = np.array([1, 2, 3, 4, 5, 6])
4

Trong ví dụ này, một bộ mảng được trả về. một cho mỗi chiều. Mảng đầu tiên biểu thị các chỉ mục hàng nơi các giá trị này được tìm thấy và mảng thứ hai biểu thị các chỉ mục cột nơi các giá trị được tìm thấy

Nếu bạn muốn tạo danh sách tọa độ nơi các phần tử tồn tại, bạn có thể nén các mảng, lặp qua danh sách tọa độ và in chúng. Ví dụ

>>> a = np.array([1, 2, 3, 4, 5, 6])
5

Bạn cũng có thể sử dụng

import numpy as np
04 để in các phần tử trong một mảng nhỏ hơn 5 với

>>> a = np.array([1, 2, 3, 4, 5, 6])
6

Nếu phần tử bạn đang tìm kiếm không tồn tại trong mảng, thì mảng chỉ số được trả về sẽ trống. Ví dụ

>>> a = np.array([1, 2, 3, 4, 5, 6])
7

Tìm hiểu thêm về và

Đọc thêm về cách sử dụng hàm khác không tại.

Cách tạo một mảng từ dữ liệu hiện có

Phần này bao gồm

import numpy as np
08,
import numpy as np
09,
import numpy as np
10,
import numpy as np
11,
import numpy as np
12,
import numpy as np
13


Bạn có thể dễ dàng tạo một mảng mới từ một phần của mảng hiện có

Giả sử bạn có mảng này

>>> a = np.array([1, 2, 3, 4, 5, 6])
8

Bạn có thể tạo một mảng mới từ một phần của mảng bất kỳ lúc nào bằng cách chỉ định nơi bạn muốn cắt mảng của mình

>>> a = np.array([1, 2, 3, 4, 5, 6])
9

Tại đây, bạn đã lấy một phần của mảng từ vị trí chỉ mục 3 đến vị trí chỉ mục 8

Bạn cũng có thể xếp chồng hai mảng hiện có, theo cả chiều dọc và chiều ngang. Giả sử bạn có hai mảng,

import numpy as np
14 và
import numpy as np
15

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
0

Bạn có thể xếp chúng theo chiều dọc với

import numpy as np
16

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
1

Hoặc xếp chúng theo chiều ngang với

import numpy as np
17

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
2

Bạn có thể chia một mảng thành nhiều mảng nhỏ hơn bằng cách sử dụng

import numpy as np
18. Bạn có thể chỉ định số mảng có hình dạng bằng nhau để trả về hoặc các cột mà sau đó phép chia sẽ xảy ra

Giả sử bạn có mảng này

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
3

Nếu bạn muốn chia mảng này thành ba mảng có hình dạng bằng nhau, bạn sẽ chạy

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
4

Nếu bạn muốn tách mảng của mình sau cột thứ ba và thứ tư, bạn sẽ chạy

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
5

.

Bạn có thể sử dụng phương thức

import numpy as np
19 để tạo một đối tượng mảng mới xem dữ liệu giống như mảng ban đầu (một bản sao nông)

Lượt xem là một khái niệm quan trọng của NumPy. Các hàm NumPy, cũng như các hoạt động như lập chỉ mục và cắt, sẽ trả về các dạng xem bất cứ khi nào có thể. Điều này giúp tiết kiệm bộ nhớ và nhanh hơn (không phải sao chép dữ liệu). Tuy nhiên, điều quan trọng là phải biết điều này - sửa đổi dữ liệu trong chế độ xem cũng sẽ sửa đổi mảng ban đầu

Giả sử bạn tạo mảng này

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

Bây giờ chúng ta tạo một mảng

import numpy as np
20 bằng cách cắt
pip install numpy
85 và sửa đổi phần tử đầu tiên của
import numpy as np
20. Điều này cũng sẽ sửa đổi phần tử tương ứng trong
pip install numpy
85

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
7

Sử dụng phương pháp

import numpy as np
24 sẽ tạo một bản sao hoàn chỉnh của mảng và dữ liệu của nó (một bản sao sâu). Để sử dụng cái này trên mảng của bạn, bạn có thể chạy

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
8

.

Các phép toán mảng cơ bản

Phần này bao gồm cộng, trừ, nhân, chia, v.v.


Khi bạn đã tạo các mảng của mình, bạn có thể bắt đầu làm việc với chúng. Ví dụ: giả sử bạn đã tạo hai mảng, một mảng được gọi là “dữ liệu” và một mảng được gọi là “cái”

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn có thể thêm các mảng cùng với dấu cộng

>>> a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
9

Chuyển đổi danh sách 2D thành danh sách 3D Python

Tất nhiên, bạn có thể làm nhiều hơn là chỉ cộng

>>> print(a[0])
[1 2 3 4]
0

Chuyển đổi danh sách 2D thành danh sách 3D Python

Thao tác cơ bản rất đơn giản với NumPy. Nếu bạn muốn tìm tổng các phần tử trong một mảng, bạn sẽ sử dụng

import numpy as np
25. Điều này hoạt động cho mảng 1D, mảng 2D và mảng ở kích thước cao hơn

>>> print(a[0])
[1 2 3 4]
1

Để thêm các hàng hoặc cột trong mảng 2D, bạn sẽ chỉ định trục

Nếu bạn bắt đầu với mảng này

>>> print(a[0])
[1 2 3 4]
2

Bạn có thể tổng hợp trên trục của các hàng với

>>> print(a[0])
[1 2 3 4]
3

Bạn có thể tính tổng trên trục của các cột với

>>> print(a[0])
[1 2 3 4]
4

.

Phát thanh truyền hình

Đôi khi bạn có thể muốn thực hiện một phép toán giữa một mảng và một số (còn được gọi là phép toán giữa một vectơ và vô hướng) hoặc giữa các mảng có hai kích cỡ khác nhau. Ví dụ: mảng của bạn (chúng tôi sẽ gọi nó là "dữ liệu") có thể chứa thông tin về khoảng cách tính bằng dặm nhưng bạn muốn chuyển đổi thông tin thành km. Bạn có thể thực hiện thao tác này với

>>> print(a[0])
[1 2 3 4]
5

Chuyển đổi danh sách 2D thành danh sách 3D Python

NumPy hiểu rằng phép nhân sẽ xảy ra với từng ô. Khái niệm đó được gọi là phát sóng. Phát sóng là một cơ chế cho phép NumPy thực hiện các thao tác trên các mảng có hình dạng khác nhau. Kích thước của mảng của bạn phải tương thích, ví dụ: khi kích thước của cả hai mảng bằng nhau hoặc khi một trong số chúng bằng 1. Nếu kích thước không tương thích, bạn sẽ nhận được một

import numpy as np
26

.

Hoạt động mảng hữu ích hơn

Phần này bao gồm giá trị tối đa, tối thiểu, tổng, giá trị trung bình, sản phẩm, độ lệch chuẩn, v.v.


NumPy cũng thực hiện các chức năng tổng hợp. Ngoài

import numpy as np
27,
import numpy as np
28 và
import numpy as np
29, bạn có thể dễ dàng chạy
import numpy as np
30 để lấy giá trị trung bình,
import numpy as np
31 để lấy kết quả của phép nhân các phần tử với nhau,
import numpy as np
32 để lấy độ lệch chuẩn, v.v.

>>> print(a[0])
[1 2 3 4]
6

Chuyển đổi danh sách 2D thành danh sách 3D Python

Hãy bắt đầu với mảng này, được gọi là “a”

>>> print(a[0])
[1 2 3 4]
7

Rất phổ biến khi muốn tổng hợp dọc theo một hàng hoặc cột. Theo mặc định, mọi hàm tổng hợp NumPy sẽ trả về tổng hợp của toàn bộ mảng. Để tìm tổng hoặc giá trị nhỏ nhất của các phần tử trong mảng của bạn, hãy chạy

>>> print(a[0])
[1 2 3 4]
8

Hoặc

>>> print(a[0])
[1 2 3 4]
9

Bạn có thể chỉ định trục nào bạn muốn tính toán hàm tổng hợp. Ví dụ: bạn có thể tìm giá trị nhỏ nhất trong mỗi cột bằng cách chỉ định

import numpy as np
33

[[0., 0., 0.],
 [1., 1., 1.]]
0

Bốn giá trị được liệt kê ở trên tương ứng với số lượng cột trong mảng của bạn. Với mảng bốn cột, bạn sẽ nhận được bốn giá trị làm kết quả

Đọc thêm về

Tạo ma trận

Bạn có thể chuyển các danh sách danh sách Python để tạo mảng 2-D (hoặc “ma trận”) để biểu diễn chúng trong NumPy

[[0., 0., 0.],
 [1., 1., 1.]]
1

Chuyển đổi danh sách 2D thành danh sách 3D Python

Các hoạt động lập chỉ mục và cắt lát rất hữu ích khi bạn thao tác với ma trận

[[0., 0., 0.],
 [1., 1., 1.]]
2

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn có thể tổng hợp các ma trận giống như cách bạn đã tổng hợp các vectơ

[[0., 0., 0.],
 [1., 1., 1.]]
3

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn có thể tổng hợp tất cả các giá trị trong một ma trận và bạn có thể tổng hợp chúng trên các cột hoặc hàng bằng cách sử dụng tham số

import numpy as np
34. Để minh họa điểm này, hãy xem xét một bộ dữ liệu được sửa đổi một chút

[[0., 0., 0.],
 [1., 1., 1.]]
4

Chuyển đổi danh sách 2D thành danh sách 3D Python

Khi bạn đã tạo ma trận của mình, bạn có thể cộng và nhân chúng bằng các toán tử số học nếu bạn có hai ma trận có cùng kích thước

[[0., 0., 0.],
 [1., 1., 1.]]
5

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn có thể thực hiện các phép tính số học này trên các ma trận có kích thước khác nhau, nhưng chỉ khi một ma trận chỉ có một cột hoặc một hàng. Trong trường hợp này, NumPy sẽ sử dụng các quy tắc phát sóng của nó cho hoạt động

[[0., 0., 0.],
 [1., 1., 1.]]
6

Chuyển đổi danh sách 2D thành danh sách 3D Python

Xin lưu ý rằng khi NumPy in các mảng N chiều, trục cuối cùng được lặp lại nhanh nhất trong khi trục đầu tiên là chậm nhất. Ví dụ

[[0., 0., 0.],
 [1., 1., 1.]]
7

Thường có những trường hợp chúng ta muốn NumPy khởi tạo các giá trị của một mảng. NumPy cung cấp các chức năng như

import numpy as np
35 và
import numpy as np
36 và lớp
import numpy as np
37 để tạo số ngẫu nhiên cho điều đó. Tất cả những gì bạn cần làm là chuyển số phần tử bạn muốn nó tạo ra

[[0., 0., 0.],
 [1., 1., 1.]]
8

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn cũng có thể sử dụng

import numpy as np
35,
import numpy as np
36 và
import numpy as np
40 để tạo mảng 2D nếu bạn cung cấp cho họ một bộ mô tả kích thước của ma trận

[[0., 0., 0.],
 [1., 1., 1.]]
9

Chuyển đổi danh sách 2D thành danh sách 3D Python

Đọc thêm về cách tạo mảng, chứa đầy các giá trị

pip install numpy
56,
pip install numpy
57, các giá trị khác hoặc chưa được khởi tạo, tại

Tạo số ngẫu nhiên

Việc sử dụng tạo số ngẫu nhiên là một phần quan trọng trong cấu hình và đánh giá nhiều thuật toán số và máy học. Cho dù bạn cần khởi tạo ngẫu nhiên các trọng số trong mạng thần kinh nhân tạo, chia dữ liệu thành các tập hợp ngẫu nhiên hoặc xáo trộn ngẫu nhiên tập dữ liệu của mình, thì việc có thể tạo các số ngẫu nhiên (thực ra là các số giả ngẫu nhiên có thể lặp lại) là điều cần thiết

Với

import numpy as np
43, bạn có thể tạo các số nguyên ngẫu nhiên từ thấp (hãy nhớ rằng điều này bao gồm NumPy) đến cao (độc quyền). Bạn có thể đặt
import numpy as np
44 để bao gồm số cao

Bạn có thể tạo một mảng 2 x 4 các số nguyên ngẫu nhiên trong khoảng từ 0 đến 4 với

>>> import numpy as np
>>> a = np.array([1, 2, 3])
0

.

Cách nhận các vật phẩm và số lượng độc đáo

Phần này bao gồm

import numpy as np
45


Bạn có thể dễ dàng tìm thấy các phần tử duy nhất trong một mảng với

import numpy as np
46

Ví dụ: nếu bạn bắt đầu với mảng này

>>> import numpy as np
>>> a = np.array([1, 2, 3])
1

bạn có thể sử dụng

import numpy as np
46 để in các giá trị duy nhất trong mảng của mình

>>> import numpy as np
>>> a = np.array([1, 2, 3])
2

Để lấy các chỉ số của các giá trị duy nhất trong một mảng NumPy (một mảng gồm các vị trí chỉ mục đầu tiên của các giá trị duy nhất trong mảng), chỉ cần chuyển đối số

import numpy as np
48 trong
import numpy as np
45 cũng như mảng của bạn

>>> import numpy as np
>>> a = np.array([1, 2, 3])
3

Bạn có thể chuyển đối số

import numpy as np
50 trong
import numpy as np
45 cùng với mảng của mình để lấy số lượng tần suất của các giá trị duy nhất trong mảng NumPy

>>> import numpy as np
>>> a = np.array([1, 2, 3])
4

Điều này cũng hoạt động với mảng 2D. Nếu bạn bắt đầu với mảng này

>>> import numpy as np
>>> a = np.array([1, 2, 3])
5

Bạn có thể tìm thấy các giá trị duy nhất với

>>> import numpy as np
>>> a = np.array([1, 2, 3])
6

Nếu đối số trục không được thông qua, mảng 2D của bạn sẽ bị làm phẳng

Nếu bạn muốn nhận các hàng hoặc cột duy nhất, hãy đảm bảo chuyển đối số

import numpy as np
34. Để tìm các hàng duy nhất, hãy chỉ định
import numpy as np
33 và đối với các cột, hãy chỉ định
import numpy as np
54

>>> import numpy as np
>>> a = np.array([1, 2, 3])
7

Để có được các hàng, vị trí chỉ mục và số lần xuất hiện duy nhất, bạn có thể sử dụng

>>> import numpy as np
>>> a = np.array([1, 2, 3])
8

Để tìm hiểu thêm về cách tìm các phần tử duy nhất trong một mảng, hãy xem

Chuyển đổi và định hình lại một ma trận

Phần này bao gồm

pip install numpy
81,
import numpy as np
57,
import numpy as np
58


Thông thường cần phải chuyển đổi ma trận của bạn. Mảng NumPy có thuộc tính

import numpy as np
59 cho phép bạn chuyển đổi ma trận

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn cũng có thể cần chuyển kích thước của ma trận. Ví dụ, điều này có thể xảy ra khi bạn có một mô hình mong đợi một hình dạng đầu vào nhất định khác với tập dữ liệu của bạn. Đây là nơi mà phương pháp

import numpy as np
60 có thể hữu ích. Bạn chỉ cần chuyển vào các kích thước mới mà bạn muốn cho ma trận

>>> import numpy as np
>>> a = np.array([1, 2, 3])
9

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn cũng có thể sử dụng

import numpy as np
61 để đảo ngược hoặc thay đổi các trục của một mảng theo các giá trị bạn chỉ định

Nếu bạn bắt đầu với mảng này

>>> np.zeros(2)
array([0., 0.])
0

Bạn có thể hoán vị mảng của mình với

import numpy as np
57

>>> np.zeros(2)
array([0., 0.])
1

Bạn cũng có thể sử dụng

import numpy as np
58

>>> np.zeros(2)
array([0., 0.])
2

Để tìm hiểu thêm về hoán vị và định hình lại mảng, hãy xem và

Làm thế nào để đảo ngược một mảng

Phần này bao gồm

import numpy as np
66


Hàm

import numpy as np
66 của NumPy cho phép bạn lật hoặc đảo ngược nội dung của một mảng dọc theo một trục. Khi sử dụng
import numpy as np
66, hãy chỉ định mảng bạn muốn đảo ngược và trục. Nếu bạn không chỉ định trục, NumPy sẽ đảo ngược nội dung dọc theo tất cả các trục của mảng đầu vào của bạn

Đảo ngược mảng 1D

Nếu bạn bắt đầu với một mảng 1D như thế này

>>> np.zeros(2)
array([0., 0.])
3

Bạn có thể đảo ngược nó với

>>> np.zeros(2)
array([0., 0.])
4

Nếu bạn muốn in mảng bị đảo ngược của mình, bạn có thể chạy

>>> np.zeros(2)
array([0., 0.])
5

Đảo ngược một mảng 2D

Một mảng 2D hoạt động theo cùng một cách

Nếu bạn bắt đầu với mảng này

>>> np.zeros(2)
array([0., 0.])
6

Bạn có thể đảo ngược nội dung trong tất cả các hàng và tất cả các cột bằng

>>> np.zeros(2)
array([0., 0.])
7

Bạn chỉ có thể dễ dàng đảo ngược các hàng với

>>> np.zeros(2)
array([0., 0.])
8

Hoặc chỉ đảo ngược các cột với

>>> np.zeros(2)
array([0., 0.])
9

Bạn cũng có thể đảo ngược nội dung của chỉ một cột hoặc hàng. Ví dụ: bạn có thể đảo ngược nội dung của hàng ở vị trí chỉ mục 1 (hàng thứ hai)

pip install numpy
00

Bạn cũng có thể đảo ngược cột ở vị trí chỉ số 1 (cột thứ hai)

pip install numpy
01

Đọc thêm về đảo ngược mảng tại

Định hình lại và làm phẳng các mảng đa chiều

Phần này bao gồm

import numpy as np
70,
import numpy as np
71


Có hai cách phổ biến để làm phẳng một mảng.

import numpy as np
70 và
import numpy as np
73. Sự khác biệt chính giữa hai mảng này là mảng mới được tạo bằng cách sử dụng
import numpy as np
71 thực sự là một tham chiếu đến mảng cha (i. e. , một cái nhìn"). Điều này có nghĩa là bất kỳ thay đổi nào đối với mảng mới cũng sẽ ảnh hưởng đến mảng cha. Vì
import numpy as np
75 không tạo bản sao nên bộ nhớ hiệu quả

Nếu bạn bắt đầu với mảng này

pip install numpy
02

Bạn có thể sử dụng

import numpy as np
76 để làm phẳng mảng của mình thành mảng 1D

pip install numpy
03

Khi bạn sử dụng

import numpy as np
76, các thay đổi đối với mảng mới của bạn sẽ không thay đổi mảng gốc

Ví dụ

pip install numpy
04

Nhưng khi bạn sử dụng

import numpy as np
75, những thay đổi bạn thực hiện đối với mảng mới sẽ ảnh hưởng đến mảng cha

Ví dụ

pip install numpy
05

Đọc thêm về

import numpy as np
76 tại và
import numpy as np
75 tại

Cách truy cập chuỗi tài liệu để biết thêm thông tin

Phần này bao gồm

import numpy as np
83,
import numpy as np
84,
import numpy as np
85


Khi nói đến hệ sinh thái khoa học dữ liệu, Python và NumPy được xây dựng có tính đến người dùng. Một trong những ví dụ tốt nhất về điều này là quyền truy cập tích hợp vào tài liệu. Mỗi đối tượng chứa tham chiếu đến một chuỗi, được gọi là chuỗi tài liệu. Trong hầu hết các trường hợp, chuỗi tài liệu này chứa một bản tóm tắt ngắn gọn và nhanh chóng về đối tượng và cách sử dụng nó. Python có chức năng

import numpy as np
83 tích hợp có thể giúp bạn truy cập thông tin này. Điều này có nghĩa là gần như bất cứ lúc nào bạn cần thêm thông tin, bạn có thể sử dụng
import numpy as np
83 để nhanh chóng tìm thấy thông tin bạn cần

Ví dụ

pip install numpy
06

Do việc truy cập thông tin bổ sung rất hữu ích nên IPython sử dụng ký tự

import numpy as np
84 làm cách viết tắt để truy cập tài liệu này cùng với các thông tin liên quan khác. IPython là một trình bao lệnh cho tính toán tương tác bằng nhiều ngôn ngữ. Bạn có thể tìm thêm thông tin về IPython tại đây

Ví dụ

pip install numpy
07

Bạn thậm chí có thể sử dụng ký hiệu này cho các phương thức đối tượng và chính các đối tượng

Giả sử bạn tạo mảng này

>>> a = np.array([1, 2, 3, 4, 5, 6])

Sau đó, bạn có thể thu được rất nhiều thông tin hữu ích (đầu tiên là thông tin chi tiết về chính

pip install numpy
85, tiếp theo là chuỗi tài liệu của
pip install numpy
44 trong đó
pip install numpy
85 là một ví dụ)

pip install numpy
09

Điều này cũng có tác dụng đối với các chức năng và các đối tượng khác mà bạn tạo. Chỉ cần nhớ bao gồm một chuỗi tài liệu với chức năng của bạn bằng cách sử dụng một chuỗi ký tự (

import numpy as np
92 hoặc
import numpy as np
93 xung quanh tài liệu của bạn)

Ví dụ: nếu bạn tạo chức năng này

pip install numpy
10

Bạn có thể lấy thông tin về chức năng

pip install numpy
11

Bạn có thể tiếp cận một cấp độ thông tin khác bằng cách đọc mã nguồn của đối tượng mà bạn quan tâm. Sử dụng dấu chấm hỏi kép (

import numpy as np
85) cho phép bạn truy cập mã nguồn

Ví dụ

pip install numpy
12

Nếu đối tượng được đề cập được biên dịch bằng một ngôn ngữ không phải Python, việc sử dụng

import numpy as np
85 sẽ trả về cùng thông tin như
import numpy as np
84. Ví dụ, bạn sẽ tìm thấy điều này với rất nhiều đối tượng và loại tích hợp sẵn

pip install numpy
13

pip install numpy
14

có cùng đầu ra vì chúng được biên dịch bằng ngôn ngữ lập trình khác với Python

Làm việc với các công thức toán học

Việc dễ dàng triển khai các công thức toán học hoạt động trên mảng là một trong những điều khiến NumPy được sử dụng rộng rãi trong cộng đồng khoa học Python

Ví dụ: đây là công thức lỗi bình phương trung bình (một công thức trung tâm được sử dụng trong các mô hình học máy được giám sát xử lý hồi quy)

Chuyển đổi danh sách 2D thành danh sách 3D Python

Việc triển khai công thức này rất đơn giản và dễ hiểu trong NumPy

Chuyển đổi danh sách 2D thành danh sách 3D Python

Điều làm cho công việc này hoạt động hiệu quả là

import numpy as np
97 và
import numpy as np
98 có thể chứa một hoặc một nghìn giá trị. Chúng chỉ cần có cùng kích thước

Bạn có thể hình dung nó theo cách này

Chuyển đổi danh sách 2D thành danh sách 3D Python

Trong ví dụ này, cả vectơ dự đoán và nhãn đều chứa ba giá trị, nghĩa là

import numpy as np
99 có giá trị là ba. Sau khi chúng tôi thực hiện phép trừ, các giá trị trong vectơ được bình phương. Sau đó, NumPy tính tổng các giá trị và kết quả của bạn là giá trị lỗi cho dự đoán đó và điểm cho chất lượng của mô hình

Chuyển đổi danh sách 2D thành danh sách 3D Python
Chuyển đổi danh sách 2D thành danh sách 3D Python

Cách lưu và tải các đối tượng NumPy

Phần này bao gồm

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
00,
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
01,
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
02,
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
03,
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
04


Tại một thời điểm nào đó, bạn sẽ muốn lưu các mảng của mình vào đĩa và tải chúng trở lại mà không cần phải chạy lại mã. May mắn thay, có một số cách để lưu và tải các đối tượng bằng NumPy. Các đối tượng ndarray có thể được lưu vào và tải từ các tệp đĩa với các hàm

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
05 và
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
06 xử lý các tệp văn bản thông thường, các hàm
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
07 và
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
08 xử lý các tệp nhị phân NumPy với một. phần mở rộng tệp npy và hàm
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
09 xử lý các tệp NumPy có. phần mở rộng tệp npz

Các. npy và. Các tệp npz lưu trữ dữ liệu, hình dạng, dtype và các thông tin khác cần thiết để xây dựng lại ndarray theo cách cho phép mảng được truy xuất chính xác, ngay cả khi tệp nằm trên một máy khác có kiến ​​trúc khác

Nếu bạn muốn lưu trữ một đối tượng ndarray, hãy lưu trữ nó dưới dạng. tệp npy bằng cách sử dụng

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
00. Nếu bạn muốn lưu trữ nhiều hơn một đối tượng ndarray trong một tệp, hãy lưu nó dưới dạng. tệp npz bằng cách sử dụng
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
01. Bạn cũng có thể lưu một số mảng vào một tệp duy nhất ở định dạng nén npz với

Thật dễ dàng để lưu và tải và tạo mảng với

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
13. Chỉ cần đảm bảo chỉ định mảng bạn muốn lưu và tên tệp. Ví dụ: nếu bạn tạo mảng này

>>> a = np.array([1, 2, 3, 4, 5, 6])

Bạn có thể lưu nó dưới dạng “filename. npy” với

pip install numpy
16

Bạn có thể sử dụng

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
14 để xây dựng lại mảng của mình

pip install numpy
17

Nếu bạn muốn kiểm tra mảng của mình, bạn có thể chạy

pip install numpy
18

Bạn có thể lưu một mảng NumPy dưới dạng tệp văn bản thuần túy như một. csv hoặc. txt với

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
02

Ví dụ: nếu bạn tạo mảng này

pip install numpy
19

Bạn có thể dễ dàng lưu nó dưới dạng. csv với tên “new_file. csv” như thế này

pip install numpy
20

Bạn có thể tải tệp văn bản đã lưu của mình một cách nhanh chóng và dễ dàng bằng cách sử dụng

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
16

pip install numpy
21

Các hàm

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
17 và
>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
16 chấp nhận các tham số tùy chọn bổ sung như đầu trang, chân trang và dấu phân cách. Mặc dù các tệp văn bản có thể dễ dàng chia sẻ hơn,. npy và. các tệp npz nhỏ hơn và đọc nhanh hơn. Nếu bạn cần xử lý phức tạp hơn đối với tệp văn bản của mình (ví dụ: nếu bạn cần làm việc với các dòng chứa các giá trị bị thiếu), bạn sẽ muốn sử dụng hàm

Với , bạn có thể chỉ định đầu trang, chân trang, nhận xét, v.v.

Học nhiều hơn về

Nhập và xuất CSV

Thật đơn giản để đọc trong CSV chứa thông tin hiện có. Cách tốt nhất và dễ nhất để làm điều này là sử dụng Pandas

pip install numpy
22

Chuyển đổi danh sách 2D thành danh sách 3D Python

Thật đơn giản khi sử dụng Pandas để xuất mảng của bạn. Nếu bạn chưa quen với NumPy, bạn có thể muốn tạo khung dữ liệu Pandas từ các giá trị trong mảng của mình, sau đó ghi khung dữ liệu vào tệp CSV bằng Pandas

Nếu bạn đã tạo mảng này “a”

pip install numpy
23

Bạn có thể tạo một khung dữ liệu Pandas

pip install numpy
24

Bạn có thể dễ dàng lưu khung dữ liệu của mình với

pip install numpy
25

Và đọc CSV của bạn với

pip install numpy
26

Chuyển đổi danh sách 2D thành danh sách 3D Python

Bạn cũng có thể lưu mảng của mình bằng phương thức NumPy

>>> a = np.arange(6)
>>> a2 = a[np.newaxis, :]
>>> a2.shape
(1, 6)
06

pip install numpy
27

Nếu đang sử dụng dòng lệnh, bạn có thể đọc CSV đã lưu của mình bất kỳ lúc nào bằng một lệnh chẳng hạn như

pip install numpy
28

Hoặc bạn có thể mở tệp bất cứ lúc nào bằng trình soạn thảo văn bản

Nếu bạn muốn tìm hiểu thêm về Pandas, hãy xem tài liệu chính thức của Pandas. Tìm hiểu cách cài đặt Pandas với thông tin cài đặt Pandas chính thức

Vẽ mảng với Matplotlib

Nếu bạn cần tạo một biểu đồ cho các giá trị của mình, thì rất đơn giản với Matplotlib

Ví dụ, bạn có thể có một mảng như thế này

pip install numpy
29

Nếu bạn đã cài đặt Matplotlib, bạn có thể nhập nó bằng

pip install numpy
30

Tất cả những gì bạn cần làm để vẽ các giá trị của mình là chạy

pip install numpy
31

Chuyển đổi danh sách 2D thành danh sách 3D Python

Ví dụ: bạn có thể vẽ một mảng 1D như thế này

pip install numpy
32

Chuyển đổi danh sách 2D thành danh sách 3D Python

Với Matplotlib, bạn có quyền truy cập vào vô số tùy chọn trực quan hóa

pip install numpy
33

Chuyển đổi danh sách 2D thành danh sách 3D Python

Để đọc thêm về Matplotlib và những gì nó có thể làm, hãy xem tài liệu chính thức. Để biết hướng dẫn về cách cài đặt Matplotlib, hãy xem phần cài đặt chính thức

Bạn có thể có danh sách 3d trong python không?

Trong python, với sự trợ giúp của một danh sách, chúng ta có thể định nghĩa mảng 3 chiều này . Mảng 3 chiều là mảng của mảng.

Làm cách nào để chuyển đổi mảng 2D thành danh sách trong python?

Để chuyển đổi từ mảng Numpy thành danh sách, chúng ta chỉ cần nhập tên của mảng Numpy 2D, sau đó gọi phương thức Numpy tolist() which produced a Python list as an output. From the structure, we can see that this is a nested Python list.

Làm cách nào để chuyển đổi danh sách đa chiều thành danh sách đơn trong python?

Có thể chuyển đổi danh sách nhiều chiều như l=[[1,2],[3,4]] thành danh sách 1D bằng cách thực hiện sum(l,[])< . .