我刚刚开始学习numpy.fft
,所以请提前道歉。
我有一个由1000个1和0的元素组成的数组,代表1000毫秒的脉冲输入,包括真和假。我想在这个数组上执行rfft
。举个简单的例子,我创建了一个数组,它每3个元素有一个1,否则为0:
freq = 3
for j in range(0, 1000):
if freq != 0 and (((j + 1) % freq) == 0):
arr3hz.append(1)
else:
arr3hz.append(0)
我本以为rfft
会给我3Hz,但我使用了以下代码:
n = len(arr3hz)
d = 1 / 1000
hs = np.fft.rfft(arr3hz)
fs = np.fft.rfftfreq(n, d)
amps = np.absolute(hs)
for j in range(0, len(fs)):
fw.write("Freq: %d Amp: %f\n" % (fs[j], amps[j]))
在我的书面文件中,我只是看到随机频率元素与随机振幅,这是我无法理解的。我使用numpy.rfft
有什么问题?我也不确定在n
和d
以及这样的数组中使用什么
这里发生了一些事情
您对
n
和d
使用了正确的值。一般来说,我发现打印输出比打印输出更有帮助
看到了吗
相关问题 更多 >
编程相关推荐