Hướng dẫn remove column from 2d array python - xóa cột khỏi mảng 2d python

Trong bài viết này, chúng tôi sẽ thảo luận về cách loại bỏ các phần tử khỏi mảng 1D hoặc 2D theo vị trí chỉ mục bằng cách sử dụng numpy.delete (). Sau đó, chúng ta cũng sẽ xem cách loại bỏ các hàng và cột khỏi mảng 2D.

Xóa các phần tử / hàng / cột khỏi mảng numpy bằng np.delete ()

np.delete()

Thư viện Python sườn Numpy cung cấp một phương pháp để xóa các phần tử khỏi một mảng numpy dựa trên vị trí chỉ mục, tức là.

numpy.delete(arr, obj, axis=None)

Arguments:

  • ARR: Mảng Numpy mà các yếu tố cần được xóa. : Numpy array from which elements needs to be deleted.
  • OBJ: Vị trí chỉ mục hoặc danh sách các vị trí chỉ mục của các mục sẽ bị xóa khỏi mảng mảng numpy.: Index position or list of index positions of items to be deleted from numpy array arr.
  • Trục: Trục dọc theo đó chúng tôi muốn xóa.: Axis along which we want to delete.
    • Nếu 1 sau đó xóa các cột.
    • Nếu 0 thì xóa hàng.
    • Nếu không có sau đó làm phẳng mảng và sau đó áp dụng xóa trên nó.

Returns:

Quảng cáo

  • Trả về một bản sao của mảng numpy đã qua, tức là ARR, bằng cách xóa các phần tử tại các vị trí chỉ mục được chỉ ra bởi OBJ. Nếu trục là không có thì trả về một mảng phẳng.arr, by deleting elements at index positions pointed by obj. If axis is None then returns a flattened array.

Hãy cùng xem cách sử dụng np.delete () để loại bỏ các phần tử bằng các vị trí chỉ mục từ các mảng 1D & 2D và cũng cách xóa các hàng & cột khỏi các mảng 2D Numpy.

Trước hết, mô -đun nhập khẩu Numpy, tức là.

import numpy as np

Xóa một phần tử trong mảng 1D numpy theo vị trí chỉ mục

Giả sử chúng ta có một loạt các số numpy, tức là.

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])

Bây giờ, hãy để xóa một phần tử ở vị trí chỉ mục 2 trong mảng Numpy được tạo ở trên,

# Delete element at index position 2
arr = np.delete(arr, 2)

print('Modified Numpy Array by deleting element at index position 2')
print(arr)

Output:

Modified Numpy Array by deleting element at index position 2
[ 4  5  7  8  9 10 11]

Trong np.delete (), chúng tôi đã vượt qua mảng numpy và cũng là vị trí chỉ mục của phần tử, mà chúng tôi muốn bị xóa. Nó đã trả lại một bản sao của mảng đã qua bằng cách xóa phần tử tại vị trí chỉ mục 2. Sau đó, chúng tôi đã gán cho mảng mới trở lại cùng một biến tham chiếu và nó đã tạo ra hiệu ứng mà chúng tôi đã xóa phần tử khỏi mảng numpy tại chỗ.

Xóa nhiều phần tử trong mảng 1D Numpy theo vị trí chỉ mục

Để xóa nhiều phần tử khỏi một mảng numpy theo các vị trí chỉ mục, hãy vượt qua mảng numpy và danh sách các vị trí chỉ mục sẽ bị xóa sang np.delete (), tức là.

# Create a Numpy array from list of numbers
arr = np.array([4, 5, 6, 7, 8, 9, 10, 11])

# Delete element at index positions 1,2 and 3
arr = np.delete(arr, [1,2,3])

print('Modified Numpy Array by deleting element at index position 1, 2 & 3')
print(arr)

Output:

Modified Numpy Array by deleting element at index position 1, 2 & 3
[ 4  8  9 10 11]

Nó đã xóa các phần tử tại vị trí chỉ mục 1,2 và 3 khỏi mảng numpy. Nó đã trả lại một bản sao của mảng đã qua bằng cách xóa nhiều phần tử tại các chỉ số đã cho. Sau đó, chúng tôi đã gán cho mảng mới trở lại cùng một biến tham chiếu và nó đã tạo ra một hiệu ứng mà chúng tôi đã xóa các phần tử khỏi mảng numpy tại chỗ.

Xóa hàng & cột khỏi mảng 2D Numpy

Giả sử chúng ta có một mảng 2D numpy, tức là.

# Create a 2D numpy array from list of list
arr2D = np.array([[11 ,12, 13, 11],
                  [21, 22, 23, 24],
                  [31, 32, 33, 34]])

print(arr2D)

Output:

[[11 12 13 11]
 [21 22 23 24]
 [31 32 33 34]]

Bây giờ, hãy để Lừa xem cách xóa các hàng và cột khỏi nó dựa trên các vị trí chỉ mục.

Xóa cột trong mảng 2D Numpy theo số cột

Để xóa một cột khỏi mảng 2D bằng cách sử dụng np.delete (), chúng ta cần vượt qua trục = 1 cùng với mảng numpy và chỉ mục của cột, tức là.

# Delete column at index 1
arr2D = np.delete(arr2D, 1, axis=1)

print('Modified 2D Numpy Array by removing columns at index 1')
print(arr2D)

Output:

import numpy as np
0

Nó sẽ xóa cột tại vị trí chỉ mục 1 khỏi mảng 2D Numpy được tạo ở trên.

Xóa nhiều cột trong mảng 2D Numpy theo số cột

Trục truyền = 1 và danh sách các số cột sẽ bị xóa cùng với mảng numpy thành np.delete () tức là.axis=1 and list of column numbers to be deleted along with numpy array to np.delete() i.e.

import numpy as np
1

Đầu ra:

import numpy as np
2

Nó đã xóa các cột tại các vị trí chỉ mục 2 và 3 khỏi mảng 2D Numpy được tạo ở trên.

Xóa một hàng trong mảng 2d numpy theo số hàng

Mảng 2d numpy ban đầu của chúng tôi là,arr2D is,

[[11 12 13 11]
 [21 22 23 24]
 [31 32 33 34]]

Để xóa một hàng khỏi mảng 2D Numpy bằng np.delete (), chúng ta cần vượt qua trục = 0 cùng với mảng numpy và chỉ mục của hàng, tức là số hàng, số hàng,

import numpy as np
4

Output:

import numpy as np
5

Nó sẽ xóa hàng tại vị trí chỉ mục 0 khỏi mảng 2D Numpy được tạo ở trên.

Xóa nhiều hàng trong mảng 2d numpy theo số hàng

Mảng 2d numpy ban đầu của chúng tôi là,arr2D is,

import numpy as np
6

Để xóa một hàng khỏi mảng 2D Numpy bằng np.delete (), chúng ta cần vượt qua trục = 0 cùng với mảng numpy và chỉ mục của hàng, tức là số hàng, số hàng,axis=0 and list of row numbers to be deleted along with numpy array to np.delete() i.e.

import numpy as np
7

Output:

import numpy as np
8

Nó sẽ xóa hàng tại vị trí chỉ mục 0 khỏi mảng 2D Numpy được tạo ở trên.

Xóa nhiều hàng trong mảng 2d numpy theo số hàng

Mảng 2d numpy ban đầu của chúng tôi là,arr2D is,

[[11 12 13 11]
 [21 22 23 24]
 [31 32 33 34]]

Để xóa một hàng khỏi mảng 2D Numpy bằng np.delete (), chúng ta cần vượt qua trục = 0 cùng với mảng numpy và chỉ mục của hàng, tức là số hàng, số hàng,

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
0

Output:

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
1

Nó sẽ xóa hàng tại vị trí chỉ mục 0 khỏi mảng 2D Numpy được tạo ở trên.

Xóa nhiều hàng trong mảng 2d numpy theo số hàng

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
2

Trục trục = 0 và danh sách các số hàng sẽ bị xóa cùng với mảng numpy đến np.delete () tức là.

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
3

Output:

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
4

Nó đã xóa hàng tại vị trí chỉ mục 1 và 2 khỏi mảng 2D Numpy được tạo ở trên.

Ví dụ hoàn chỉnh như sau:

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
5

Output:

# Create a Numpy array from list of numbers
arr = np.array([4,5,6,7,8,9,10,11])
6