如何解决如何使用均方根误差条件分两步将二阶多项式拟合到数据中?
我想分两步将多项式拟合到数据中。首先,我只想将二阶多项式拟合到我的数据中。然后我计算了数据和拟合多项式之间的 rms_error。现在,我想仅使用 rms 值介于 0 和 2 之间的数据的这些索引进行第二次拟合,以避免数据中不应有助于我的连续拟合的强尖峰的影响。变量 x 和 data 是相同长度的 np.arrays。
def fit_polynom(x,a0,a1,a2):
return a0+a1*x+a2*x**2
init_fit_param = [0,0]
fit_params,fit_covariances = scipy.curve_fit(fit_polynom,x,data,p0=init_fit_param)
rms_array = np.sqrt((data - fit_polynom(x,fit_params[0],fit_params[1],fit_params[2]))**2)
for rms in rms_array:
if rms >= 0 and rms <= 2:
print(rms)
所以我可以打印满足我的条件的 rms_array 的值,现在谁能告诉我如何获得满足条件的这些 rms 值的索引,然后对数据进行第二次拟合。总结:如何获取 rms 值介于 0 和 2 之间的数据元素?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。