PolynomialFeatures 文档:https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PolynomialFeatures.html

用于使用N次多项式生成数据

示例代码

import numpy as np
import pandas as pd
from sklearn.preprocessing import PolynomialFeatures  # 导入多项式回归模型def get_dataset():from sklearn.datasets import make_classificationdata_x, data_y = make_classification(n_samples=1000, n_classes=2, n_features=6, n_informative=4,random_state=0)  # 2个特征data_x = pd.DataFrame(data_x)data_x.columns = ['x1', 'x2', 'x3', 'x4', 'x5', 'x6']return data_xdef add_column(poly_powers: np.ndarray) -> list:max_len = poly_powers.shape[1]poly_column = ["x{}".format(i + 1) for i in range(max_len)]columns = []for horizontal_line in poly_powers:col_list = []for index, value in enumerate(horizontal_line):if value > 1:col_list.append("{poly_index}**{num}".format(num=value,poly_index=poly_column[index],))elif value == 1:col_list.append("{poly_index}".format(poly_index=poly_column[index],))if col_list:columns.append("+".join(col_list))else:columns.append("1")return columnsdef poly_value(data: pd.DataFrame):polynomial_feature_model = PolynomialFeatures(degree=3)poly_x = polynomial_feature_model.fit_transform(data)poly_x = pd.DataFrame(poly_x)poly_x.columns = add_column(polynomial_feature_model.powers_)return poly_xif __name__ == '__main__':data_x = get_dataset()poly_data = poly_value(data_x)print(poly_data)

得到的结果如下:

       1        x1        x2        x3  ...      x5**3  x5**2+x6  x5+x6**2     x6**3
0    1.0 -0.552465 -1.160639 -0.779016  ...  -1.333448  2.130765 -3.404826  5.440694
1    1.0 -0.710243  1.189469  1.575520  ...  10.125638 -6.623330  4.332419 -2.833900
2    1.0  1.956264 -1.033471 -0.033675  ...  -1.580429  1.253745 -0.994589  0.789002
3    1.0 -0.983920 -1.760851 -1.311534  ...  -7.535724  2.077078 -0.572507  0.157801
4    1.0 -1.098149 -0.832067 -2.498585  ... -14.974664 -6.968804 -3.243093 -1.509248
..   ...       ...       ...       ...  ...        ...       ...       ...       ...
995  1.0 -2.765017 -1.363646 -3.061364  ... -17.785180  7.117992 -2.848766  1.140134
996  1.0  0.532498 -0.434889 -1.397499  ...  -3.392939  2.175902 -1.395412  0.894882
997  1.0 -0.603629 -1.120553 -1.606443  ...  -7.375363 -0.514285 -0.035861 -0.002501
998  1.0  0.674121  1.392857  1.473987  ...   6.608712 -3.731587  2.107029 -1.189727
999  1.0 -1.429769  0.442256 -2.735209  ...  -3.744852  0.812304 -0.176199  0.038220

python 数据变化——n次多项式相关推荐

  1. python Box-Cox数据变化与逆变化

    Box-Cox数据变化是一个基于参数λ的数据变化方法 接受任意分布的输入,但需要值>0 可以使变化后的数据减少变量之间的相关性 减少噪声 数据Box-Cox变化与逆变换 stats box-co ...

  2. [Python] 数据预处理(缺失值、异常值、重复值) [相关方法参数说明、代码示例、相关概念]

    前言 系列文章目录 [Python]目录 视频及资料和课件 链接:https://pan.baidu.com/s/1LCv_qyWslwB-MYw56fjbDg?pwd=1234 提取码:1234 文 ...

  3. 《Python数据科学指南》——1.8 使用迭代器

    本节书摘来自异步社区<Python数据科学指南>一书中的第1章,第1.8节,作者[印度] Gopi Subramanian ,方延风 刘丹 译,更多章节内容可以访问云栖社区"异步 ...

  4. 超硬核的 Python 数据可视化教程!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:机器学习算法那些事 Python实现可视化的三个步骤: ...

  5. 超硬核的 Python 数据可视化教程

    来源:数据分析1480 本文约3000字,建议阅读6分钟 本文为你介绍Python实现可视化的三个步骤. Python实现可视化的三个步骤: 确定问题,选择图形 转换数据,应用函数 参数设置,一目了然 ...

  6. Python数据可视化教程之基础篇

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 开运张 | 作者 知乎专栏 | 来源 https://zhuanlan.zhihu.c ...

  7. python 数据分析学什么-python数据分析师要学什么

    数据分析师 是数据师Datician['detɪʃən]的一种,指的是不同行业中,专门从事行业数据搜集.整理.分析,并依据数据做出行业研究.评估和预测的专业人员. 1.数学知识(推荐学习:Python ...

  8. Python数据可视化之Matplotlib实现各种图表

    数据分析就是将数据以各种图表的形式展现给领导,供领导做决策用,因此熟练掌握饼图.柱状图.线图等图表制作是一个数据分析师必备的技能.Python有两个比较出色的图表制作框架,分别是Matplotlib和 ...

  9. Python数据收集及分析学习相关

    Python数据收集及分析学习相关 简介 1.所需要的基础知识 2.个人推荐书籍和网站 2.1 Python基础 2.2 Numpy基础 2.3 Pandas基础 2.4 Matplotlib基础 2 ...

最新文章

  1. C2893 未能使函数模板“unknown-type std::invoke(_Callable ,_Types ...)”专用化 websocket_server
  2. Windows Live Messenger 8.5 抢先试用
  3. c++ h cpp文件如何关联_C++核心准则SF.5: .cpp文件必须包含定义它接口的.h文件
  4. Lemmy仿Reddit社区 v0.8.10源码
  5. Shell——printf 命令
  6. 人之间的尊重是相互的_人与人之间真心是互换的尊重是相互的
  7. CCF201403-1 相反数(解法三)(100分)(废除!!!)
  8. 安卓手机清楚内置X5浏览器缓存
  9. 深圳90后小伙拿到14所国外名牌大学offer
  10. 可拖拽GridView代码解析
  11. 第三季-第17课-信号量同步编程
  12. Linux下安装zabbix详细介绍
  13. MapABC Flex地图官方API应用整理
  14. 医院预约挂号系统使用说明
  15. iOS 调整图片尺寸和大小的两个方法
  16. python文本可读性
  17. 转:微信、米聊用户数量猛增 短信业务受冲击
  18. [PAT乙级]1025 反转链表 (思路+精简代码)
  19. 如何在抖音官网链接中一键复制微信号跳转微信
  20. 如何将明细数据关联对照表后生成汇总统计表

热门文章

  1. c语言循环控制结构的单元课程设计,C语言单元课程设计(张芝雨).pdf
  2. 音频特效:Delay 和 Vibrato
  3. [tools]python的mkdocs模块分分钟将md搞成一个网站
  4. 搭建svn,创建svn项目
  5. Trace文件过量生成问题解决
  6. 统计过去数据一个php脚本
  7. Open vswitch 之Qos rate-limiting 原理
  8. 同一工作组无法访问_工作组、AD、域、DC...
  9. ssm框架整合_框架整合战斗压缩粮篇SpringCloud+SpringBoot+SSM
  10. java printwriter 没有关闭_Java PrintWriter close()方法