如何在Python中使用NumPy通过重复元素对矩阵进行升频

如何在Python中使用NumPy通过重复元素对矩阵进行升频

对矩阵进行升频意味着对其进行扩展,显然升频可以通过在原矩阵中添加更多的元素来完成。它可以通过各种方式完成,如添加新元素并扩展原始矩阵,或者通过原始矩阵本身的矩阵元素完成。下面将讨论后一种方法以及2种方法来做同样的事情。

方法1:使用 repeat()

我们使用numpy.repeat()方法通过重复矩阵中的数字来对矩阵进行上样。我们在repeat()方法中传递矩阵,并以矩阵为轴进行上样。这个方法是用来重复数组的元素。

语法:

numpy.repeat(array, repeats, axis=0)

参数:

  • array=数组的名称
  • repeats= 每个元素的重复次数
  • axis= 重复数值的轴。默认情况下,坐标轴被设置为无。
  • 对于行轴=0,对于列轴=1。

步骤

  • Import module
  • Create array
  • 将其传递给重复方法
  • Print matrix

示例:

# importing required module
import numpy as np
  
# declaring an array
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
  
# use the repeat function to upsample the array
print(np.repeat(a, 5, axis=1).repeat(3, axis=0))

输出:

如何在Python中使用NumPy通过重复元素对矩阵进行上样?

方法2:

在这个方法中,我们将看到np.kron是如何用来对矩阵进行上采样的。我们在传递矩阵的同时也传递了一个矩阵,这两个矩阵将使用kron()方法相互乘以,结果将是一个上采样的矩阵。

语法:

np.kron(a ,b)

其中a和b是两个数组。

  • 它返回两个数组的克朗克乘积。
  • 它的参数是两个数组,它们的乘积要被计算出来

示例:

# import required libraries
import numpy as np
  
# creating an array using numpy
a = np.array([[9, 8, 5], [11, 12, 14], [20, 21, 22]])
  
# using kron function upsampling the array
upsampled_array = np.kron(a, np.ones((2, 2)))
  
# printing the desired result
print(upsampled_array)

输出 :

如何在Python中使用NumPy通过重复元素对矩阵进行上样?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程