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中else语句块的使用技巧
Jun 16 Python
详细介绍Python的鸭子类型
Sep 12 Python
Python排序搜索基本算法之插入排序实例分析
Dec 11 Python
python opencv旋转图像(保持图像不被裁减)
Jul 26 Python
Python中的引用知识点总结
May 20 Python
Python微信操控itchat的方法
May 31 Python
python中时间、日期、时间戳的转换的实现方法
Jul 06 Python
自适应线性神经网络Adaline的python实现详解
Sep 30 Python
python读取raw binary图片并提取统计信息的实例
Jan 09 Python
Pycharm中import torch报错的快速解决方法
Mar 05 Python
Expected conditions模块使用方法汇总代码解析
Aug 13 Python
Python读取pdf表格写入excel的方法
Jan 22 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
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
2011/11/07 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
2012/08/08 PHP
解析phpstorm + xdebug 远程断点调试
2013/06/20 PHP
详解PHP中strlen和mb_strlen函数的区别
2014/03/07 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
bgsound 背景音乐 的一些常用方法及特殊用法小结
2010/05/11 Javascript
浅谈JavaScript异常处理语句
2015/06/26 Javascript
jQuery带时间的日期控件代码分享
2015/08/26 Javascript
JQuery控制DIV的选取实现方法
2016/09/18 Javascript
AngularJS实现DOM元素的显示与隐藏功能
2016/11/22 Javascript
JavaScript仿支付宝6位数字密码输入框
2016/12/29 Javascript
快速掌握jQuery插件开发
2017/01/19 Javascript
JavaScript之underscore_动力节点Java学院整理
2017/07/03 Javascript
深入理解Vue 组件之间传值
2018/08/16 Javascript
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
2020/03/31 Javascript
Electron整合React使用搭建开发环境的步骤详解
2020/06/07 Javascript
实例讲解React 组件生命周期
2020/07/08 Javascript
Python命令行参数解析模块getopt使用实例
2015/04/13 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
pandas 时间格式转换的实现
2019/07/06 Python
关于Numpy中的行向量和列向量详解
2019/11/30 Python
解决TensorFlow训练内存不断增长,进程被杀死问题
2020/02/05 Python
浅谈JupyterNotebook导出pdf解决中文的问题
2020/04/22 Python
keras 自定义loss损失函数,sample在loss上的加权和metric详解
2020/05/23 Python
Python趣味入门教程之循环语句while
2020/08/26 Python
HTML5视频播放插件 video.js介绍
2018/09/29 HTML / CSS
Swisse官方海外旗舰店:澳大利亚销量领先,自然健康品牌
2017/12/15 全球购物
卡骆驰英国官网:Crocs英国
2019/08/22 全球购物
土木工程师岗位职责
2013/11/24 职场文书
安全演讲稿大全
2014/05/09 职场文书
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
本地通过nginx配置反向代理的全过程记录
2021/03/31 Servers
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
Nginx反向代理至go-fastdfs案例讲解
2021/08/02 Servers