NumPy clip () Trong Python đã từng kẹp (giới hạn) các phần tử trong một mảng. Trong clip() hàm, vượt qua khoảng (kết hợp của giá trị nhỏ nhất và giá trị lớn nhất), các giá trị bên ngoài khoảng được cắt bớt vào các cạnh khoảng. Ví dụ, nếu một khoảng thời gian [1, 2] được chỉ định, các giá trị nhỏ hơn 1 được thay thế bằng 1 và các giá trị lớn hơn 2 được thay thế bằng 2.

Trong bài viết này, tôi sẽ giải thích Python NumPy kẹp () cú pháp hàm, tham số và cách nó hoạt động khi cắt hoặc cắt NumPy mảng tại một khoảng thời gian cụ thể.

1. Ví dụ nhanh về chức năng Clip Python NumPy

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách sử dụng Python NumPy clip () hàm số. Để biết thêm thông tin về NumPy tham khảo Hướng dẫn NumPy .

# Below are the quick examples

# Example 1: Use numpy.  clip () function
arr = np.arange(15)
arr1 = np.  clip (arr, 2, 10)

# Example 2: Use apply numpy.  clip () on user defined array
arr1 = np.  clip (arr, a_min = 8, a_max = 49)

# Example 3: When lower limit Of numpy.  clip  is an array
arr1 = np.  clip (arr, a_min = [6, 8, 11, 15, 10, 8, 8, 4, 4, 4,7,7], a_max = 52)

# Example 4: 
arr1 = np.zeros_like(arr)
arr2 = np.  clip (arr, 7, 37,out = arr1)

# Example 5: 
arr = np.array([[1, 5, 8, 15], [29, 35, 38, 49]],np.uint16)

# Example 6: Set a_max = None
arr = [1, 5, 8, 15, 25, 29,35, 38,49,52,61,66]
arr1 = np.  clip (arr, a_min = 8, a_max = None )

2. Cú pháp của NumPy clip ()

Sau đây là cú pháp của kẹp() hàm số.

  
# Syntax of clip() function
numpy.clip(arr, a_min, a_max, out=None)
 

2.1 Các thông số của kẹp() Hàm số

Sau đây là các thông số của NumPy clip () hàm số.

  • arr – Một mảng chứa các phần tử được cắt bớt.
  • a_min – Nó là một vô hướng hoặc một mảng. Nếu nó được đặt thành Không, việc cắt sẽ không được thực hiện ở cạnh khoảng dưới. Không nhiều hơn một trong số arr_min và arr_max có thể là Không có.
  • a_max – Nó là một vô hướng hoặc một mảng. Nếu nó được đặt thành Không, việc cắt sẽ không được thực hiện ở cạnh khoảng trên. Không nhiều hơn một trong số a_min và a_max có thể là Không.
  • out – Kết quả sẽ được đặt trong mảng này.

2.2 Giá trị hoàn trả của kẹp()

Nó trả về mảng đã cắt và mảng ban đầu vẫn không thay đổi.

3. Cách sử dụng NumPy clip () Hàm số

Để cắt các giá trị trong một mảng, NumPy mô-đun của Python cung cấp một hàm được gọi là numpy. kẹp (). Khi chúng ta chỉ định giới hạn dưới và giới hạn trên của một mảng bằng cách sử dụng hàm này, nó sẽ trả về một mảng trong đó các phần tử nhỏ hơn giới hạn đã chỉ định được thay thế bằng giới hạn thấp nhất và lớn hơn giới hạn đã chỉ định được thay thế bằng giới hạn cao nhất.

Tạo ra NumPy sử dụng mảng arange() sau đó, chúng tôi sẽ áp dụng clip() và lấy mảng đã cắt.

import numpy as np
arr = np.arange(15)

# Use numpy.  clip () function
arr1 = np.  clip (arr, 2, 10)
print("The clipped array:", arr1)

# Output
# The clipped array: [ 2  2  2  3  4  5  6  7  8  9 10 10 10 10 10]

4. Áp dụng NumPy clip () trên Mảng do người dùng xác định

Hãy tạo một mảng bằng cách sử dụng numpy.array() chức năng và áp dụng kẹp () cùng với khoảng thời gian được chỉ định, nó sẽ trả về mảng đã được cắt bớt. Trong đối tượng arr dưới đây, tất cả các giá trị nhỏ hơn 8 được thay thế bằng 8 và lớn hơn 49 được thay thế bằng 49 giá trị.

# Use apply numpy.  clip () on user defined array
arr = [1, 5, 8, 15, 25, 29,35, 38,49,52,61,66]
arr1 = np.  clip (arr, a_min = 8, a_max = 49)
print("The clipped array:", arr1)

# Output
# The clipped array: [ 8  8  8 15 25 29 35 38 49 49 49 49]

5. Đặt Giới hạn dưới là NumPy Mảng

Chúng ta có thể đặt giới hạn dưới bằng một đại lượng vô hướng hoặc một mảng cho các giá trị bị cắt bớt của một mảng nhất định. Nó sẽ trả về mảng đã cắt trong đó các phần tử bên ngoài khoảng được thay thế bằng các giới hạn được chỉ định. Hãy lấy một ví dụ,

# When Lower limit Of numpy.  clip  is an array
arr1 = np.  clip (arr, a_min = [6, 8, 11, 15, 10, 8, 8, 4, 4, 4,7,7], a_max = 52)
print(arr1)

# Output
# [ 6 8 11 15 25 29 35 38 49 52 52 52]

6. Đặt Giới hạn Cao hơn là Không có

Sử dụng None nếu bạn chỉ muốn chỉ định một trong các giá trị tối thiểu và tối đa của NumPy mảng. Hàm này sẽ trả về mảng đã cắt với các phần tử bên ngoài được thay thế bằng các phần tử được chỉ định.

# Set a_max = None
arr = [1, 5, 8, 15, 25, 29,35, 38,49,52,61,66]
arr1 = np.  clip (arr, a_min = 8, a_max = None )
print("The clipped array:", arr1)

# Output 
# The clipped array: [ 8  8  8 15 25 29 35 38 49 52 61 66]

Nếu bạn cố gắng đặt cả giá trị tối thiểu và tối đa là Không, bạn sẽ nhận được Lỗi giá trị. Ví dụ,

arr1 = np.  clip (arr, a_min = None, a_max = None )
print("The clipped array:", arr1)

# Output
# ValueError: One of max or min must be given

7. Lấy Mảng đã cắt dọc theo Tham số

Bạn muốn xuất kết quả sang mảng khác. Sau đó, trong trường hợp này, bạn phải chuyển sang kẹp (). Tham số out phải có cùng thứ nguyên với đầu vào NumPy mảng. Bạn có thể thấy kết quả đã được gán cho một mảng khác.

# output The clipped array to another array
arr1 = np.zeros_like(arr)
arr2 = np.  clip (arr, 7, 37,out = arr1)
print(arr2)

# Output
# [ 7  7  8 15 25 29 35 37 37 37 37 37]

8. Kết luận

Trên đây là Cách sử dụng NumPy clip () trong Python. Tôi hy vọng bài viết này cung cấp thông tin hữu ích cho bạn. Chúng tôi rất muốn nghe đề xuất và câu hỏi của bạn, vì vậy hãy liên hệ signalfix.net hoặc để lại cho chúng tôi một bình luận.