Computer >> Máy Tính >  >> Lập trình >> Python

Trả về tích chập tuyến tính rời rạc của hai chuỗi một chiều trong Python

Để trả về tích chập tuyến tính rời rạc của hai chuỗi một chiều, hãy sử dụng phương thức thenumpy.convolve () trong Python Numpy.

Toán tử tích chập thường được thấy trong xử lý tín hiệu, trong đó nó mô hình hóa ảnh hưởng của một hệ thống bất biến thời gian tuyến tính lên một tín hiệu. Trong lý thuyết xác suất, tổng của hai biến ngẫu nhiên độc lập được phân phối theo tích chập của các phân phối riêng lẻ của chúng. Nếu v dài hơn a, các mảng được hoán đổi trước khi tính toán. Phương thức này trả về Phép toán tuyến tính, rời rạc của a và v. Tham số thứ nhất, a là mảng đầu vào một chiều đầu tiên. Tham số thứ 2, v là mảng đầu vào một chiều thứ hai. Tham số thứ 3, chế độ là tùy chọn, với các giá trị đầy đủ ',' hợp lệ ',' giống nhau '

Các bước

Đầu tiên, hãy nhập các thư viện được yêu cầu -

import numpy as np

Tạo mảng một chiều hai chiều bằng cách sử dụng phương thức array () -

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

Hiển thị các mảng -

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

Kiểm tra Kích thước của cả hai mảng -

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

Kiểm tra Hình dạng của cả hai mảng -

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

Để trả về tích chập tuyến tính rời rạc của hai chuỗi một chiều, hãy sử dụng phương thức thenumpy.convolve () -

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

Ví dụ

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 ))

Đầu ra

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]