你们的每个赞都能让我开心好几天✿✿ヽ(°▽°)ノ✿
详细资料见官方文档
目录
拟合:
1.LinearModelFit 线性拟合
基本用法:
(1)基本范例
data = {{0, 1}, {1, 0}, {3, 2}, {5, 4}};
lm = LinearModelFit[data, x, x]
Normal[lm]
Show[ListPlot[data], Plot[lm[x], {x, 0, 5}], Frame -> True]
结果:第三行的意思是转为普通表达式
2.NonlinearModelFit 非线性拟合
基本用法:
我更喜欢这种方法,因为它既可以拟合线性,也可拟合非线性,只需要改变参数form即可
(1)基本范例1
data = {{6, 4, 5}, {2, 9, 2}, {6, 5, 1}, {7, 3, 9}, {4, 8, 7}, {2, 5,
4}, {5, 8, 3}, {9, 2, 3}};nlm = NonlinearModelFit[data, a Exp[b x] + c y^2, {a, b, c}, {x, y}]
一定要注意拟合参数与自变量之间一定要有空格,不然输出就错了
结果:
(2)基本范例2
data = {{0, -0.447}, {0.1, 1.978}, {0.2, 3.28}, {0.3, 6.16}, {0.4,
7.08}, {0.5, 7.34}, {0.6, 7.66}, {0.7, 9.56}, {0.8, 9.48}, {0.9,
9.30}, {1, 11.2}};nlm = NonlinearModelFit[data, a x^2 + b x + c, {a, b, c}, x]
结果:
可视化:
Show[ListPlot[data], Plot[nlm[x], {x, 0, 1}]]
结果:
你们的每个赞都能让我开心好几天✿✿ヽ(°▽°)ノ✿