构建多项式模型
在本例中,使用专门的多项式库,将演示各种阶次的多项式的构造及其可视化。
安装构建多项式所需的多项式库:
In [ ]:
Pkg.add("Polynomials")
启动多项式库:
In [ ]:
using Polynomials
形成一组数据,从中构造多项式:
In [ ]:
xs = collect(0:20); ys = @. exp(-xs) + sin(xs);
构建多项式模型:
In [ ]:
pol1 = fit(xs,ys,1)
pol5 = fit(xs,ys,5)
pol9 = fit(xs,ys,9)
pol20 = fit(xs,ys,20)
println(pol1)
启动图表库:
In [ ]:
using Plots
绘制所得多项式:
In [ ]:
scatter(xs,ys,label="исходные данные")
plot!(pol1, extrema(xs)..., label="полином 1-й степени")
plot!(pol5, extrema(xs)..., label="полином 5-й степени")
plot!(pol9, extrema(xs)..., label="полином 9-й степени")
plot!(pol20, extrema(xs)..., label="полином 20-й степени")
Out[0]:
结论:
在这个例子中,演示了多项式的构造及其可视化。 使用该图,您可以估计多项式的程度对其与原始数据集的拟合有多大影响。