Python trích xuất mảng từ mảng

Viết chương trình NumPy để trích xuất tất cả các phần tử của cột đầu tiên và cột thứ tư từ một mảng (4x4) đã cho

Trình bày bằng hình ảnh


Giải pháp mẫu

Mã Python

import numpy as np
arra_data = np.arange(0,16).reshape((4, 4))
print("Original array:")
print(arra_data)
print("\nExtracted data: All the elements of the first and fourth columns ")
print(arra_data[:, [0,3]])

Đầu ra mẫu

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]

Trình chỉnh sửa mã Python-Numpy

Có một cách khác để giải quyết giải pháp này?

Trước. Viết chương trình NumPy để trích xuất tất cả các phần tử của cột thứ hai và thứ ba từ một mảng (4x4) đã cho.
Tiếp theo. Viết chương trình NumPy để trích xuất phần tử đầu tiên của hàng thứ hai và phần tử thứ tư của hàng thứ tư từ một mảng (4x4) đã cho.

Mức độ khó của bài tập này là gì?

Dễ dàng trung bình khó

Kiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource



con trăn. Lời khuyên trong ngày

Loại bỏ các bản sao

Nó chỉ nhận các giá trị duy nhất, nó có thể thay đổi và giống như từ điển, nó không có thứ tự

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

x=set(lst)
print(x)

đầu ra

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

Đối tượng mới sẽ có kiểu "đặt"

lst=[1,2,2,2,2,3,4,4,5,6,7]

a=set(lst)
print(type(x))

đầu ra

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

Nếu bạn muốn khắc phục chuyển đổi loại và giữ dữ liệu của mình dưới dạng danh sách, chỉ cần thêm hàm danh sách như bên dưới và nó sẽ ở dạng danh sách sau khi hàm set loại bỏ tất cả các bản sao

Việc cắt mảng Python NumPy được sử dụng để trích xuất một số phần dữ liệu từ mảng thực tế. Cắt trong python có nghĩa là trích xuất dữ liệu từ một chỉ mục đã cho sang một chỉ mục đã cho khác, tuy nhiên, việc cắt NumPy hơi khác một chút. Việc cắt lát có thể được thực hiện với sự trợ giúp của

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]
2. Một đối tượng cắt mảng NumPy được xây dựng bằng cách cung cấp các tham số ______60,

# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
1 và

# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
2 cho hàm cắt tích hợp. Đối tượng cắt này được chuyển đến mảng để trích xuất một số phần của mảng

Cú pháp của việc cắt Python NumPy là


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
3


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
4. Chỉ số này theo mặc định được coi là '0'


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
1. Chỉ số này coi như là độ dài của mảng


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
2. Theo mặc định, nó được coi là '1'

Trong bài viết này, tôi sẽ giải thích việc cắt mảng Python NumPy và cách trích xuất một số phần dữ liệu từ mảng 1 chiều, mảng 2 chiều và mảng 3 chiều

Một cách khác để truy cập các phần tử từ mảng NumPy là lập chỉ mục mảng NumPy

Lưu ý rằng các mảng trong đối tượng


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
7 tuân theo chỉ mục dựa trên số không

1. Ví dụ nhanh về Python NumPy Array Slicing

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách cắt mảng Python NumPy

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
4

2. Cắt mảng NumPy 1 chiều

Sử dụng thao tác cắt, chúng ta có thể trích xuất các phần tử của mảng 1-D NumPy. Ví dụ,

Cú pháp


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
8 để cắt các phần tử từ

# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]
9 từ mảng 1-D sau


# import numpy module
import numpy as np

# Create NumPy arrays
arr = np.array([3, 5, 7, 9, 11, 15, 18, 22])

# Use slicing to get 1-D arrays elements
arr2 = arr[1:6]
print(arr2) 

# OutPut
# [ 5  7  9 11 15]

Từ phần trên, bạn có thể quan sát thấy rằng kết quả 

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
80 chỉ số bắt đầu là 5, nhưng đã loại trừ chỉ số kết thúc là
Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
81

Khi chúng ta truyền các phần tử từ chỉ số 3 đến chỉ số cuối như một tham số của phép cắt, chúng ta sẽ nhận được các phần tử của một mảng từ chỉ số 3 đến chỉ số cuối cùng

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
8

Để cắt các phần tử của mảng 1-D từ chỉ mục bắt đầu sang chỉ mục thứ 5 như một tham số của thao tác cắt, chúng ta sẽ lấy các phần tử của một mảng từ chỉ mục bắt đầu đến chỉ mục kết thúc được đề cập trước đó

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

x=set(lst)
print(x)
1

Sử dụng giá trị bước để xác định bước cắt. Nó trả về mọi phần tử khác từ toàn bộ mảng. Thực hiện theo cú pháp cắt [bắt đầu. dừng lại. step] ở đây, các tham số được phân tách bằng dấu hai chấm (. )

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

x=set(lst)
print(x)
2

3. Sử dụng kỹ thuật cắt lát phủ định để lấy các phần tử của mảng NumPy

Là một phần của việc trích xuất các phần tử của mảng NumPy từ phần cuối, chúng ta phải sử dụng phép cắt âm, nghĩa là trích xuất các phần tử của một mảng từ phần cuối

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
82 để cắt từ chỉ mục -4 sang chỉ mục -2 từ cuối. Toán tử trừ để chỉ một chỉ mục từ cuối

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

x=set(lst)
print(x)
4

Từ phần trên, chúng ta có thể thấy chúng ta đã cắt các phần tử của một mảng từ cuối

4. Sử dụng Cắt lát với Mảng NumPy khoảng 0f

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
83 trong phần này
Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
84 là điểm bắt đầu và
Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
85 là khoảng. Vì vậy, các ngôi sao mảng trả về từ phần tử trong chỉ số ba. Sau đó, nó lấy mọi phần tử thứ tư của mảng cho đến hết

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]

x=set(lst)
print(x)
8

5. Cắt mảng NumPy 2 chiều

Sử dụng cắt mảng 2 chiều theo cả hai trục để thu được tập hợp con hình chữ nhật của mảng ban đầu. Bạn có thể sử dụng

Original array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]

Extracted data: All the elements of the first and fourth columns 
[[ 0  3]
 [ 4  7]
 [ 8 11]
 [12 15]]
86 để chọn hàng 1. một đến hết cuối mảng và cột 1. 3 (cột 1 và 2)

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]
0

6. Cắt mảng NumPy 3 chiều

Để trích xuất các phần tử của mảng 3-D NumPy bằng thao tác cắt lát, trước tiên chúng ta phải tạo một mảng 3 chiều và sau đó, áp dụng thao tác cắt lát

lst=[1,2,2,2,2,3,4,4,5,6,7,8,9,10]
1

7. Sự kết luận

Trong bài viết này, tôi đã giải thích các kỹ thuật cắt mảng Python NumPy để trích xuất các phần tử từ mảng 1-D, mảng 2-D và mảng 3-D với các ví dụ

Làm cách nào để trích xuất mảng từ mảng?

Có thể trích xuất một phần của mảng bằng phương thức slice(). .
Nếu không có giá trị nào được cung cấp, quá trình trích xuất được thực hiện cho đến hết mảng
Nếu giá trị lớn hơn độ dài của mảng thì tiến hành trích xuất cho đến hết

Làm cách nào để lấy mảng từ danh sách trong Python?

Phương thức. Sử dụng mảng() + chỉ báo kiểu dữ liệu . Chỉ báo kiểu dữ liệu “i” được sử dụng trong trường hợp số nguyên, hạn chế kiểu dữ liệu.

Làm cách nào để trích xuất một mảng NumPy?

Sử dụng lập chỉ mục mảng NumPy để trích xuất các cột cụ thể Sử dụng cú pháp mảng[. , [i, j]] để trích xuất các cột được lập chỉ mục i và j từ mảng . Giống như danh sách, mảng NumPy sử dụng các chỉ mục dựa trên số không. Sử dụng mảng [. , tôi. j+1] để trích xuất các cột được lập chỉ mục từ i đến j từ mảng.

Làm cách nào để trích xuất tất cả các số giữa một phạm vi nhất định từ một mảng NumPy trong Python?

Sử dụng phương thức logic_and() . Mỗi điều kiện hoặc biểu thức sẽ trả về một giá trị boolean. Các giá trị boolean này được sử dụng để trích xuất các phần tử cần thiết từ mảng.