我想找到一个周期的平均值,比如两个最小值之间的平均值,如图中的灰线所示。怎么可能呢?
这是我的新手尝试(非常不优雅)找到最小值索引:
#find minima
f= data
start =0
end = len(f)/10
step =len(f)/10
while end < len(f):
minVal = min(f[start:end])
end = end +step
start = start +step
for i,j in enumerate(f):
if j == minVal:
print i,j
您可以在此link
找到数据答案 0 :(得分:1)
您可能想要做的事情需要一点钙质知识。可以使用傅里叶变换(技术上是离散傅立叶变换)在时域f(t)或它们之间的频域f(F)中查看循环函数https://en.wikipedia.org/wiki/Discrete_Fourier_transform 完成此操作后,您唯一需要做的就是找到f(F)的最大值:波浪中最常出现的频率。这将为您提供查找平均值的大小。