本篇为数值分析课程代码实现-多项式最小二乘回归的实现
仅供参考
配置环境
- Python3.6
- matplotlib
- numpy
# -*- coding: utf-8 -*-
"""
Created on Thu Nov 29 21:09:27 2018
多项式回归
@author: hhuaf
"""
import matplotlib.pyplot as plt
from sklearn.preprocessing import PolynomialFeatures
import numpy as np
'''
每次运行不一样
i为样本号
[xi,yi]
yi=Eaixi
数据集有0-n n+1个
高次项有x^0-n 的
先构造0-2n
'''
#可以显示中文
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams['axes.unicode_minus'] = False
# 设置风格
plt.style.use('ggplot')
class PolynomialRegression():
def __init__(self):
self.W = None
self.pol=None
self.degree=None
def fit(self, X, y, n):
if type(X)!=np.ndarray:
X=np.array(X)
if len(X.shape) <= 2:
X=X.reshape([-1,1])