我是NumPy,SciPy的新手。以前,我已经使用Matlab / Octave很长时间了。
对于二维数组,似乎- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message{}
逐行工作。对我来说,这非常令人困惑,因为通过Matlab,这些操作是逐列完成的。 scipy中的所有其他操作是否也逐行执行?
我可以像在Matlab中一样在NumPy / SciPy中逐列执行操作吗?
答案 0 :(得分:4)
Numpy的fft()
接受“轴”参数,因此您可以要求逐列FFT而不是默认的逐行FFT。
例如,以下内容返回x
中每列的16点FFT :(如果您不知道行数,则可以为第二个参数指定None
):
import numpy as np
x = np.hstack([np.zeros((16,1)), np.ones((16,1))])
x[0,0] = 1
f = np.fft.fft(x, 16, 0)
f
的第一列是delta函数的FFT,它是全1。 f
的第二列是常数序列的FFT,它是频域中的delta函数。