Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 두 개의 1차원 시퀀스의 이산 선형 컨볼루션 반환

<시간/>

두 개의 1차원 시퀀스의 이산 선형 컨볼루션을 반환하려면 Python Numpy에서 numpy.convolve() 메서드를 사용하세요.

컨볼루션 연산자는 신호에 대한 선형시불변 시스템의 효과를 모델링하는 신호 처리에서 자주 볼 수 있습니다. 확률 이론에서 두 개의 독립적인 확률변수의 합은 개별 분포의 컨볼루션에 따라 분포됩니다. v가 a보다 길면 계산 전에 배열이 교체됩니다. 이 메서드는 a 및 v의 이산 선형 컨볼루션을 반환합니다. 첫 번째 매개변수인 a는 첫 번째 1차원 입력 배열입니다. 두 번째 매개변수 v는 두 번째 1차원 입력 배열입니다. 세 번째 매개변수, 모드는 선택 사항이며 값이 가득 찼음', '유효함', '동일함'

단계

먼저 필요한 라이브러리를 가져옵니다 -

import numpy as np

array() 메서드를 사용하여 두 개의 numpy 1차원 배열 만들기 -

arr1 = np.array([1, 2, 3])
arr2 = np.array([0, 1, 0.5])

배열 표시 -

print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

두 어레이의 차원을 확인하십시오 -

print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

두 배열의 모양을 확인하십시오 -

print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

두 개의 1차원 시퀀스의 이산 선형 컨볼루션을 반환하려면 numpy.convolve() 메서드를 사용하십시오. -

print("\nResult....\n",np.convolve(arr1, arr2 ))

import numpy as np

# Creating two numpy One-Dimensional array using the array() method
arr1 = np.array([1, 2, 3])
arr2 = np.array([0, 1, 0.5])

# Display the arrays
print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

# To return the discrete linear convolution of two one-dimensional sequences, use the numpy.convolve() method in Python Numpy
print("\nResult....\n",np.convolve(arr1, arr2 ))

출력

Array1...
[1 2 3]

Array2...
[0. 1. 0.5]

Dimensions of Array1...
1

Dimensions of Array2...
1

Shape of Array1...
(3,)

Shape of Array2...
(3,)

Result....
[0. 1. 2.5 4. 1.5]