python中向量擴展


最近在給一個多通道語音加上不同信噪比的單通道噪聲的時候,需要將單通道噪聲變成多通道,比如\(6*1\)的噪聲向量,那么需要變成\(6*4\)的矩陣。也就是將自身堆疊4次構成新的矩陣。然后再去跟多通道語音相加。(因為后面涉及到一些操作,廣播的方式不利於后面的處理)。
現在介紹兩種方法解決該問題

使用tile
import numpy as np
x = np.array([1, 2, 3, 4])
'''
假如需要將該變量復制n次,這里n取4
'''
y = np.tile(x, [4,1]).T

可以得到結果如下

矩陣乘法

另外一種方式就是借助於矩陣乘法

import numpy as np
x = np.array([1, 2, 3, 4])
y = np.array([1, 1, 1, 1])
z = np.outer(x,y)

同樣可以得到上述結果

因為對python的使用程度遠遠談不上熟練,所以希望能有其它短小精悍方法的朋友們,能不吝賜教。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM