python两组数据最小二乘法求线性方程
时间: 2023-12-05 20:04:58 浏览: 26
要使用Python进行最小二乘法求解线性方程,需要使用NumPy库中的polyfit函数。该函数可以拟合给定的数据集并返回拟合的系数。
以下是使用polyfit函数进行最小二乘法求解线性方程的示例代码:
```python
import numpy as np
# 两组数据
x = np.array([1, 2, 3, 4, 5])
y = np.array([3, 5, 7, 9, 11])
# 拟合一次多项式
coefficients = np.polyfit(x, y, 1)
# 输出拟合的系数
print(coefficients)
```
输出结果为:
```
[ 2. 1.]
```
这表示拟合出的线性方程为 y = 2x + 1。
另外,如果需要画出拟合线的话,可以使用NumPy中的poly1d函数来生成拟合函数,并使用matplotlib库中的plot函数画出拟合线。以下是示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 两组数据
x = np.array([1, 2, 3, 4, 5])
y = np.array([3, 5, 7, 9, 11])
# 拟合一次多项式
coefficients = np.polyfit(x, y, 1)
poly_fit = np.poly1d(coefficients)
# 画出原始数据和拟合线
plt.scatter(x, y)
plt.plot(x, poly_fit(x))
plt.show()
```
输出结果为:
![linear_regression.png](https://i.loli.net/2021/06/04/3tPbT8WxhL1sJHm.png)
其中蓝色的点表示原始数据,红色的线表示拟合线。