Python数据预处理之数据规范化(归一化)示例


Posted in Python onJanuary 08, 2019

本文实例讲述了Python数据预处理之数据规范化。分享给大家供大家参考,具体如下:

数据规范化

为了消除指标之间的量纲和取值范围差异的影响,需要进行标准化(归一化)处理,将数据按照比例进行缩放,使之落入一个特定的区域,便于进行综合分析。

数据规范化方法主要有:

- 最小-最大规范化
- 零-均值规范化

数据示例

Python数据预处理之数据规范化(归一化)示例

代码实现

#-*- coding: utf-8 -*-
#数据规范化
import pandas as pd
import numpy as np
datafile = 'normalization_data.xls' #参数初始化
data = pd.read_excel(datafile, header = None) #读取数据
(data - data.min())/(data.max() - data.min()) #最小-最大规范化
(data - data.mean())/data.std() #零-均值规范化

从命令行可以看到下面的输出:

>>> (data-data.min())/(data.max()-data.min(
          0         1         2         3
0  0.074380  0.937291  0.923520  1.000000
1  0.619835  0.000000  0.000000  0.850941
2  0.214876  0.119565  0.813322  0.000000
3  0.000000  1.000000  1.000000  0.563676
4  1.000000  0.942308  0.996711  0.804149
5  0.264463  0.838629  0.814967  0.909310
6  0.636364  0.846990  0.786184  0.929571

>>> (data-data.mean())/data.std()
          0         1         2         3
0 -0.905383  0.635863  0.464531  0.798149
1  0.604678 -1.587675 -2.193167  0.369390
2 -0.516428 -1.304030  0.147406 -2.078279
3 -1.111301  0.784628  0.684625 -0.456906
4  1.657146  0.647765  0.675159  0.234796
5 -0.379150  0.401807  0.152139  0.537286
6  0.650438  0.421642  0.069308  0.595564

上述代码改为使用print语句打印,如下:

#-*- coding: utf-8 -*-
#数据规范化
import pandas as pd
import numpy as np
datafile = 'normalization_data.xls' #参数初始化
data = pd.read_excel(datafile, header = None) #读取数据
print((data - data.min())/(data.max() - data.min())) #最小-最大规范化
print((data - data.mean())/data.std()) #零-均值规范化

可输出如下打印结果:

          0         1         2         3
0  0.074380  0.937291  0.923520  1.000000
1  0.619835  0.000000  0.000000  0.850941
2  0.214876  0.119565  0.813322  0.000000
3  0.000000  1.000000  1.000000  0.563676
4  1.000000  0.942308  0.996711  0.804149
5  0.264463  0.838629  0.814967  0.909310
6  0.636364  0.846990  0.786184  0.929571
          0         1         2         3
0 -0.905383  0.635863  0.464531  0.798149
1  0.604678 -1.587675 -2.193167  0.369390
2 -0.516428 -1.304030  0.147406 -2.078279
3 -1.111301  0.784628  0.684625 -0.456906
4  1.657146  0.647765  0.675159  0.234796
5 -0.379150  0.401807  0.152139  0.537286
6  0.650438  0.421642  0.069308  0.595564

附:代码中使用到的normalization_data.xls点击此处本站下载

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python模块学习 re 正则表达式
May 19 Python
python实现哈希表
Feb 07 Python
python中urllib.unquote乱码的原因与解决方法
Apr 24 Python
Python实现判断给定列表是否有重复元素的方法
Apr 11 Python
python操作xlsx文件的包openpyxl实例
May 03 Python
浅谈python的dataframe与series的创建方法
Nov 12 Python
在VS2017中用C#调用python脚本的实现
Jul 31 Python
详解tensorflow2.x版本无法调用gpu的一种解决方法
May 25 Python
python如何遍历指定路径下所有文件(按按照时间区间检索)
Sep 14 Python
python中xlutils库用法浅析
Dec 29 Python
Python异常类型以及处理方法汇总
Jun 05 Python
C3 线性化算法与 MRO之Python中的多继承
Oct 05 Python
Python实现的拉格朗日插值法示例
Jan 08 #Python
Python3 安装PyQt5及exe打包图文教程
Jan 08 #Python
在python3中pyqt5和mayavi不兼容问题的解决方法
Jan 08 #Python
Django之模型层多表操作的实现
Jan 08 #Python
对python mayavi三维绘图的实现详解
Jan 08 #Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
Jan 08 #Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
Jan 08 #Python
You might like
博士208HAF收音机实习报告
2021/03/02 无线电
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
PHP Array交叉表实现代码
2010/08/05 PHP
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
2014/10/29 PHP
PHP开发注意事项总结
2015/02/04 PHP
Centos PHP 扩展Xchche的安装教程
2016/07/09 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
小议Function.apply() 之一------(函数的劫持与对象的复制)
2006/11/30 Javascript
一些不错的js函数ajax
2008/08/20 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
js实现网页右上角滑出会自动消失大幅广告的方法
2015/02/27 Javascript
JS实现超精简响应鼠标显示二级菜单代码
2015/09/12 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
2015/12/03 Javascript
Jquery根据浏览器窗口改变调整大小的方法
2017/02/07 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
基于vue.js中关于下拉框的值默认及绑定问题
2018/08/22 Javascript
webstorm+vue初始化项目的方法
2018/10/18 Javascript
[46:12]完美世界DOTA2联赛循环赛 DM vs Matador BO2第一场 11.04
2020/11/04 DOTA
Python 学习笔记
2008/12/27 Python
Python 3中的yield from语法详解
2017/01/18 Python
python得到电脑的开机时间方法
2018/10/15 Python
PyTorch中permute的用法详解
2019/12/30 Python
Python文件操作方法详解
2020/02/09 Python
python为Django项目上的每个应用程序创建不同的自定义404页面(最佳答案)
2020/03/09 Python
Python根据字典的值查询出对应的键的方法
2020/09/30 Python
英国手机壳购买网站:Case Hut
2019/04/11 全球购物
Brydge英国:适用于Apple iPad和Microsoft Surface Pro的蓝牙键盘
2019/05/16 全球购物
入党积极分子思想汇报
2014/01/02 职场文书
捐助倡议书范文
2014/04/15 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
2015共产党员公开承诺书
2015/01/22 职场文书
婚礼上证婚人致辞
2015/07/28 职场文书
初中团委工作总结
2015/08/13 职场文书
JavaScript继承的三种方法实例
2021/05/12 Javascript