【发布时间】:2017-10-16 12:41:42
【问题描述】:
我有一个水面高程文件,我想知道特征周期和幅度。 所以我想用 python 做一个傅里叶分析,但我没有到。
我的文件是这样的:
- Col 0:时间,
- Col 2:海拔
我做了以下代码:
df=pd.read_csv(file,sep=';',header=None)
df.columns=['Time','Nothing','HS','Other1','Other2']
N=len(df)
T=df.loc[0,'Time']-df.loc[len(df)-1,'Time'] #Intervalle de temps
freq=np.linspace(0.0, 1, N) #Vecteur fréquence
HSf=scipy.fft(df['HS']) #Transformée de Fourier
plt.plot(freq,abs(HSf))
问题在于,通过这样做,我得到了与峰值相对应的 HSf 的第一个元素。并且显然,它将对应于我的向量频率(0)的第一个元素。
我知道周期必须在 5-8 秒左右,但我想通过这种分析找到它。
你能帮我吗?
谢谢
【问题讨论】:
-
嗨,欢迎来到 SO!请澄清你的问题。您创建幅度谱图。这似乎有效,那么问题出在哪里?
-
那么你的意思是零频率分量(即基线)是最强的,但你正在寻找频率>0的最强振荡分量?
标签: python-3.x pandas numpy scipy fft