>백엔드 개발 >파이썬 튜토리얼 >SciPy의 'argreextrema' 기능을 사용하여 1D Numpy 배열에서 로컬 최대값과 최소값을 효과적으로 감지할 수 있는 방법은 무엇입니까?

SciPy의 'argreextrema' 기능을 사용하여 1D Numpy 배열에서 로컬 최대값과 최소값을 효과적으로 감지할 수 있는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-16 07:04:02587검색

How can SciPy's `argrelextrema` function be used to effectively detect local maxima and minima in 1D Numpy arrays?

SciPy

를 사용하여 1D Numpy 배열의 로컬 극값 감지

1D 숫자 배열에서 로컬 최대값과 최소값을 찾는 것은 데이터의 일반적인 작업입니다. 분석. 단순한 접근 방식에는 요소를 이웃 요소와 비교하는 것이 포함될 수 있지만 널리 사용되는 과학 컴퓨팅 라이브러리의 일부로 확립된 알고리즘을 사용하는 것이 좋습니다.

이러한 라이브러리 중 하나는 1D에서 국소 극값을 찾기 위한 argrelextrema 기능을 제공하는 SciPy입니다. 배열. 이 기능은 최대값과 최소값 모두에서 작동할 수 있으므로 다목적 솔루션이 됩니다. 사용 방법은 다음과 같습니다.

import numpy as np
from scipy.signal import argrelextrema

# Example 1D array
x = np.random.random(12)

# Detect local maxima
maxima_indices = argrelextrema(x, np.greater)

# Detect local minima
minima_indices = argrelextrema(x, np.less)

argrelextrema 함수는 국소 극점 인덱스가 있는 배열이 포함된 튜플을 반환합니다. 이는 실제 값이 아니라 입력 배열의 인덱스일 뿐입니다. 해당 값을 얻으려면 다음을 사용하십시오.

maxima_values = x[maxima_indices[0]]
minima_values = x[minima_indices[0]]

편의를 위해 SciPy는 최대값과 최소값을 별도로 찾는 독립 실행형 함수 argrelmax 및 argrelmin도 제공합니다.

위 내용은 SciPy의 'argreextrema' 기능을 사용하여 1D Numpy 배열에서 로컬 최대값과 최소값을 효과적으로 감지할 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.