以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文
主要内容包括:
Numpy 库的polyfit、polyval 函数进行回归,并且拟合多种类型数据
熟悉 scipy 库中的插值方法
使用 scipy 库中的方法求解优化问题
使用 scipy 库计算积分
使用 SymPy 库进行符号计算,如基本数学计算、积分、微分、求解方程
一、逼近法
- import numpy as np
- import matplotlib.pyplot as plt
- %matplotlib inline
- def f(x):
- return np.sin(x) + 0.5 * x
- x = np.linspace(-2 * np.pi, 2 * np.pi, 50)
- # 示例函数图像
- # 标签: sin_plot
- # 大小: 60
- plt.plot(x, f(x), 'b')
- plt.grid(True)
- plt.xlabel('x')
- plt.ylabel('f(x)')
1、回归
作为基函数的单项式
- reg = np.polyfit(x, f(x), deg=1)
- ry = np.polyval(reg, x)
- # 示例函数和线性回归
- # 标签: sin_plot_reg_1
- # 大小: 60
- plt.plot(x, f(x), 'b', label='f(x)')
- plt.plot(x, ry, 'r.', label='regression')
- plt.legend(loc=0)
- plt.grid(True)
- plt.xlabel('x')
- plt.ylabel('f(x)')
- reg = np.polyfit(x, f(x), deg=5)
- ry = np.polyval(reg, x)
- # 标题: 使用最高5次的单项式进行回归
- # 标签: sin_plot_reg_2
- # 大小: 60
- plt.plot(x, f(x), 'b', label='f(x)')
- plt.plot(x, ry, 'r.', label='regression')
- plt.legend(loc=0)
- plt.grid(True)
- plt.xlabel('x')
- plt.ylabel('f(x)')
以上内容转自 数析学院,如需完整内容可以直接查看原文