Python gán mảng cho biến

Loại. Lập trình Xếp hạng. 2 [dễ-trung bình] Mô tả. Sử dụng mảng NumPy để tạo mảng biến 3 chiều, sau đó sử dụng mảng này để tạo mô hình. [Các] tệp. example_array. p
example_array. py ______0

Này - Nick đây. Trang này là một đoạn trích miễn phí từ khóa học $199 Python for Finance của tôi, khóa học này được giảm giá 50% cho 50 học viên tiếp theo

Nếu bạn muốn tham gia khóa học đầy đủ, hãy nhấp vào đây để đăng ký

Trong bài học này, chúng ta sẽ khám phá lập chỉ mục và gán trong mảng NumPy

Mảng tôi sẽ sử dụng trong bài học này

Như trước đây, tôi sẽ sử dụng một mảng cụ thể thông qua bài học này. Lần này nó sẽ được tạo bằng phương pháp

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
5. Đây là cách tôi tạo mảng

arr = np.random.rand[5]

Đây là mảng thực tế

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]

Để làm cho mảng này dễ nhìn hơn, tôi sẽ làm tròn mọi phần tử của mảng đến 2 chữ số thập phân bằng cách sử dụng phương thức

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
6 của NumPy

arr = np.round[arr, 2]

Đây là mảng mới

array[[0.69, 0.94, 0.66, 0.73, 0.83]]

Cách trả về một phần tử cụ thể từ một mảng NumPy

Chúng ta có thể chọn [và trả về] một phần tử cụ thể từ một mảng NumPy giống như cách chúng ta có thể sử dụng danh sách Python bình thường. sử dụng dấu ngoặc vuông

Một ví dụ dưới đây

arr[0]

#Returns 0.69

Chúng ta cũng có thể tham chiếu nhiều phần tử của mảng NumPy bằng toán tử dấu hai chấm. Ví dụ: chỉ số

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
7 chọn mọi phần tử từ chỉ số 2 trở đi. Chỉ mục
array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
8 chọn mọi phần tử cho đến và loại trừ chỉ mục 3. Chỉ mục
array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
9 trả về mọi phần tử từ chỉ mục 2 đến chỉ mục 4, ngoại trừ chỉ mục 4. Điểm cuối cao hơn luôn bị loại trừ

Dưới đây là một số ví dụ về lập chỉ mục bằng toán tử dấu hai chấm

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
1

Gán phần tử trong mảng NumPy

Chúng ta có thể gán giá trị mới cho một phần tử của mảng NumPy bằng cách sử dụng toán tử

arr = np.round[arr, 2]
0, giống như danh sách python thông thường. Dưới đây là một vài ví dụ [lưu ý rằng đây là tất cả một khối mã, có nghĩa là việc gán thành phần được chuyển từ bước này sang bước khác]

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
3

Trong [ ]

```

mảng[2. 5] = 0. 5

mảng

Trả về mảng[[0. , 0. , 0. 5, 0. 5, 0. 5]]

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
4

Như bạn có thể thấy, sửa đổi

arr = np.round[arr, 2]
1 cũng thay đổi giá trị của
arr = np.round[arr, 2]
2

Tại sao lại thế này?

Theo mặc định, NumPy không tạo bản sao của một mảng khi bạn tham chiếu biến mảng ban đầu bằng cách sử dụng toán tử gán

arr = np.round[arr, 2]
0. Thay vào đó, nó chỉ trỏ biến mới đến biến cũ, cho phép biến thứ hai thực hiện sửa đổi đối với biến ban đầu - ngay cả khi đây không phải là ý định của bạn

Điều này có vẻ kỳ lạ, nhưng nó có một lời giải thích hợp lý. Mục đích của tham chiếu mảng là để tiết kiệm sức mạnh tính toán. Khi làm việc với các tập dữ liệu lớn, bạn sẽ nhanh chóng hết RAM nếu tạo một mảng mới mỗi khi muốn làm việc với một lát của mảng

May mắn thay, có một cách giải quyết để tham chiếu mảng. Bạn có thể sử dụng phương thức

arr = np.round[arr, 2]
4 để sao chép rõ ràng một mảng NumPy

Một ví dụ về điều này là dưới đây

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
9

Như bạn có thể thấy bên dưới, việc sửa đổi mảng đã sao chép không làm thay đổi mảng ban đầu

arr = np.random.rand[5]
0

Cho đến giờ trong bài học, chúng ta mới chỉ khám phá cách tham chiếu mảng NumPy một chiều. Bây giờ chúng ta sẽ khám phá việc lập chỉ mục của mảng hai chiều

Lập chỉ mục mảng NumPy hai chiều

Để bắt đầu, hãy tạo một mảng NumPy hai chiều có tên là

arr = np.round[arr, 2]
5

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
0

Có hai cách để lập chỉ mục một mảng NumPy hai chiều

  • arr = np.round[arr, 2]
    6
  • arr = np.round[arr, 2]
    7

Cá nhân tôi thích lập chỉ mục bằng cách sử dụng danh pháp

arr = np.round[arr, 2]
7 vì nó dễ hình dung hơn theo cách từng bước. Ví dụ

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
1

Bạn cũng có thể tạo ma trận con từ mảng NumPy hai chiều bằng cách sử dụng ký hiệu này

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
2

Tham chiếu mảng cũng áp dụng cho mảng hai chiều trong NumPy, vì vậy hãy đảm bảo sử dụng phương thức

arr = np.round[arr, 2]
4 nếu bạn muốn tránh vô tình sửa đổi mảng ban đầu sau khi lưu một phần của mảng đó vào một tên biến mới

Lựa chọn có điều kiện bằng cách sử dụng mảng NumPy

Mảng NumPy hỗ trợ một tính năng có tên là

array[[0.69, 0.94, 0.66, 0.73, 0.83]]
0, cho phép bạn tạo một mảng giá trị boolean mới cho biết mỗi phần tử trong mảng có thỏa mãn một câu lệnh
array[[0.69, 0.94, 0.66, 0.73, 0.83]]
1 cụ thể hay không

Dưới đây là một ví dụ về điều này [Tôi cũng đã tạo lại biến

array[[0.69, 0.94, 0.66, 0.73, 0.83]]
2 ban đầu của mình vì đã lâu rồi chúng ta mới thấy nó]

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
3

Bạn cũng có thể tạo một mảng giá trị mới thỏa mãn điều kiện này bằng cách chuyển điều kiện vào trong dấu ngoặc vuông [giống như cách chúng ta làm để lập chỉ mục]

Một ví dụ về điều này là dưới đây

array[[0.69292946, 0.9365295 , 0.65682359, 0.72770856, 0.83268616]]
4

Lựa chọn có điều kiện có thể trở nên phức tạp hơn nhiều so với điều kiện này. Chúng ta sẽ khám phá thêm các ví dụ trong các vấn đề thực hành liên quan của phần này

tiếp tục

Trong bài học này, chúng ta đã tìm hiểu chi tiết về cách lập chỉ mục và gán mảng NumPy. Chúng tôi sẽ củng cố thêm kiến ​​thức của bạn về các khái niệm này bằng cách giải quyết một loạt các vấn đề thực hành trong phần tiếp theo

Bạn có thể gán một mảng cho một biến không?

Một biến mảng kết hợp cũng có thể được gán một giá trị biến mảng kết hợp của cùng kiểu dữ liệu mảng kết hợp . Điều này có thể được thực hiện bằng cách sử dụng câu lệnh gán.

Bạn có thể tạo một mảng các biến trong Python không?

Ghi chú. Python không có hỗ trợ tích hợp sẵn cho Mảng , nhưng có thể sử dụng Danh sách Python để thay thế.

Chủ Đề