欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

python实现PolynomialFeatures多项式的方法

时间:2021-04-20 08:54:43|栏目:Python代码|点击:

sklearn生成多项式

import numpy as np
from sklearn.preprocessing import PolynomialFeatures  #这哥用于生成多项式
x=np.arange(6).reshape(3,2) #生成三行二列数组
reg = PolynomialFeatures(degree=3) #这个3看下面的解释
reg.fit_transform(x)

在这里插入图片描述

x是下面这样:

在这里插入图片描述

我们发现规律如下:

在这里插入图片描述

Python生成多项式

编写实现函数如下:

def multi_feature(x,n):
  c = np.empty((x.shape[0],0)) #np.empty((3,1))并不会生成一个3行1列的空数组,np.empty((3,0))才会生成3行1列空数组
  for i in range(n+1):
    for m in range(i,-1,-1):
      h=(x[:,0]**m) * (x[:,1]**(i-m))
      c=np.c_[c,h]
  return c

multi_feature(x,3)

在这里插入图片描述

和上面实现的一模一样

print('n=4时,sklearn的输出是:')
reg = PolynomialFeatures(degree=4) 
print(reg.fit_transform(x))
print('\n')

#对比
print('n=4时,函数的输出是:')
print(multi_feature(x,4))

在这里插入图片描述

也是一样的,当然这个函数仅适用于2维数组,如果是n维数组,又该怎么实现呢?

上一篇:Python求均值,方差,标准差的实例

栏    目:Python代码

下一篇:djano一对一、多对多、分页实例代码

本文标题:python实现PolynomialFeatures多项式的方法

本文地址:http://www.codeinn.net/misctech/104826.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有