南强小屋 Design By 杰米

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)

python实现PolynomialFeatures多项式的方法

x是下面这样:

python实现PolynomialFeatures多项式的方法

我们发现规律如下:

python实现PolynomialFeatures多项式的方法

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)

python实现PolynomialFeatures多项式的方法

和上面实现的一模一样

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

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

python实现PolynomialFeatures多项式的方法

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

标签:
python,PolynomialFeatures多项式,python,PolynomialFeatures

南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米

评论“python实现PolynomialFeatures多项式的方法”

暂无python实现PolynomialFeatures多项式的方法的评论...

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。