Python 最小二乘法拟合多项式

最小二乘法拟合多项式

  • 一、功能
  • 二、最小二乘法拟合多项式
  • 三、运行结果

一、功能

  利用最小二乘法去拟合直线、任意项高阶多项式。

二、最小二乘法拟合多项式

  示例:

import random
import numpy as np
from scipy.optimize import leastsq     # 最小二乘法

def orbit_fitting(t,m):

    def func(p, x):   #回归模型函数
        w3, w2, w1, w0 = p      #初始化要拟合方程的系数,根据自己的公式适当添加
        return w3*x**3 + w2*x**2 +w1 * x + w0

    def error(p, x, y):     #误差
        return func(p, x) - y

    orbital_paras = []

    p0 = [1, 2, 3, 4]    #初始化参数  (随便输入)
    x = np.array(t)
    y = np.array(m)
    Para = leastsq(error, p0, args=(x, y))
    orbital_paras.append(Para[0])
    print(Para[0], Para[1])
    return orbital_paras

x = np.linspace(1, 1000, 70)  # 创建时间序列
p_value = [-5,10,2,30]  # 原始数据的参数
noise 

你可能感兴趣的:(python,最小二乘法,机器学习)