5
from scipy.io.wavfile import read
filepath = glob.glob('*.wav')
rates = []
datas = []
for fp in filepath:
rate, data = read(fp)
rates.append(rate)
datas.append(data)
我拿到名單 '數據' 是:蟒蛇:numpy的名單陣列和vstack
[array([0, 0, 0, ..., 0, 0, 0], dtype=int16), array([0, 0, 0, ..., 0, 0, 1], dtype=int16), array([0, 0, 0, ..., 0, 0, 0], dtype=int16),..., array([0, 0, 0, ..., 0, 0, 0], dtype=int16)]
我用
new_array = numpy.vstack([datas])
得到new_array:
[[array([0, 0, 0, ..., 0, 0, 0], dtype=int16)
array([0, 0, 0, ..., 0, 0, 1], dtype=int16)
array([0, 0, 0, ..., 0, 0, 0], dtype=int16)
...
array([0, 0, 0, ..., 0, 0, 0], dtype=int16)]]
但我更喜歡一個是:
(array([[ 0, 0, 0, ..., 0, 0, 0],
[ 0, 0, 0, ..., 0, 0, 1],
[ 0, 0, 0, ..., 0, 0, 0],
...,
[ 0, 0, 0, ..., 0, 0, 0]], dtype=int16)
我應該使用哪個函數?
謝謝。
我相信你不需要'''''vstack'調用。試試:'new_array = numpy.vstack(datas)'。 – ely
我嘗試去除'[]',但我收到一條錯誤消息「'ValueError:除了連接軸之外的所有輸入數組維度必須完全匹配。」 – user2858910
您可以打印'datas [0] .shape'嗎? – ely