我正在尝试为多个嘈杂的正弦波创建一条平均迹线/最佳拟合线。这是我为创建正弦波而生成的代码:
import matplotlib.pyplot as plt
import numpy as np
from scipy.optimize import leastsq
x = np.arange(0,10,.05)
noise = np.random.normal(0,.05,200)
wave = np.sin(x)
y = noise + wave
noise2 = np.random.normal(0,.05,200)
y2 = noise2 + wave
noise3 = np.random.normal(0,.05,200)
y3 = noise3 + wave
plt.plot(x, y)
plt.plot(x, y2)
plt.plot(x, y3)
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.show()
当我在网上搜索/本网站寻求建议时,我遇到的问题是大多数人正在为一组数据点创建最佳拟合线,而不是多条线。
任何建议将不胜感激,谢谢!
这是我迄今为止尝试过的:
guess_mean = np.mean(y)
guess_std = 3.0*np.std(y)/(2**.5)
guess_phase = 0
first_guess= guess_std*np.sin(x+guess_phase) + guess_mean
plt.plot(first_guess, label='first guess')
但这是行不通的,我认为是因为月经已经关闭。