最小二乘法 python程序
时间: 2024-11-07 12:10:59 浏览: 12
最小二乘法的 Python 程序.zip
最小二乘法是一种优化算法,用于拟合数据点,使得实际值与预测值之间的误差平方和最小。在Python中,我们可以使用numpy库来实现这个过程。以下是一个简单的例子:
```python
import numpy as np
# 假设我们有数据点 (x, y)
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 5, 4, 5])
# 创建线性模型参数 (斜率 m 和 y 轴截距 b)
m, b = None, None
def linear_regression(x, y):
# 使用numpy的linalg.lstsq函数求解最小二乘法
# 参数是系数矩阵和目标向量 (这里是 x 的二维数组和一维向量 y)
coefficients, residuals, rank, singular_values = np.linalg.lstsq(x, y)
m, b = coefficients[0], coefficients[1] # 提取斜率和截距
return m, b
# 计算并打印结果
m, b = linear_regression(x, y)
print(f"斜率 (m) : {m}")
print(f"截距 (b) : {b}")
# 可以通过新的x值计算预测值
new_x = 6
predicted_y = m * new_x + b
print(f"预测值 (for x={new_x}) : {predicted_y}")
```
阅读全文