我有一个FFT结果.它们存储在两个double数组中:实部数组和虚部数组.如何确定与这些阵列中每个元素对应的频率?
换句话说,我想创建一个存储FFT的每个实部和虚部的频率的数组.
我fft在numpy中使用了函数,导致了一个复杂的数组.如何获得准确的频率值?
我想开发音符探测器作为我的学位项目,我想从头开始.我已经编写了".wav"文件的代码,该文件从该音频音乐文件中提取所有信息,并为我提供振幅.
然后我为DFT编写了一个代码 - 它给出了一个复数的输出,其中一个轴(实/虚)是幅度/幅度,另一个是相位.
现在问题我想要频率的答案(赫兹不在矢量中)所以我可以检查我的DFT是否给了我正确的输出.如何将DFT输出转换为频率?
我必须用C语言编写代码,我不想使用任何内置库
我正在分析时间序列数据,并希望提取 5 个主要频率分量并将其用作训练机器学习模型的特征。我的数据集是921 x 10080. 每行是一个时间序列,总共有 921 个。
在探索可能的方法时,我遇到了各种函数,包括numpy.fft.fft,numpy.fft.fftfreq和DFT... 我的问题是,这些函数对数据集有什么作用,这些函数之间有什么区别?
对于Numpy.fft.fft,Numpy 文档状态:
Compute the one-dimensional discrete Fourier Transform.
This function computes the one-dimensional n-point discrete Fourier Transform (DFT) with the efficient Fast Fourier Transform (FFT) algorithm [CT].
Run Code Online (Sandbox Code Playgroud)
而对于numpy.fft.fftfreq:
numpy.fft.fftfreq(n, d=1.0)
Return the Discrete Fourier Transform sample frequencies.
The returned float array f contains the frequency bin centers in cycles per unit of the sample spacing (with zero at …Run Code Online (Sandbox Code Playgroud)