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在windows下实现备份程序实例
Jul 04 Python
Python标准库之随机数 (math包、random包)介绍
Nov 25 Python
Python中字符串对齐方法介绍
May 21 Python
使用Django和Python创建Json response的方法
Mar 26 Python
matlab中实现矩阵删除一行或一列的方法
Apr 04 Python
Python 3.6 读取并操作文件内容的实例
Apr 23 Python
pandas将numpy数组写入到csv的实例
Jul 04 Python
解决Python3.5+OpenCV3.2读取图像的问题
Dec 05 Python
在python中利用numpy求解多项式以及多项式拟合的方法
Jul 03 Python
对python3中的RE(正则表达式)-详细总结
Jul 23 Python
Python实现计算长方形面积(带参数函数demo)
Jan 18 Python
pycharm sciview的图片另存为操作
Jun 01 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 阴历-农历-转换类代码
2012/01/16 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
PHP常用设计模式之委托设计模式
2016/02/13 PHP
thinkPHP批量删除的实现方法分析
2016/11/09 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
详解php与ethereum客户端交互
2018/04/28 PHP
iframe 异步加载技术及性能分析
2011/07/19 Javascript
JS基础之undefined与null的区别分析
2011/08/08 Javascript
解析javascript 数组以及json元素的添加删除
2013/06/26 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
Node.js中的缓冲与流模块详细介绍
2015/02/11 Javascript
js全选实现和判断是否有复选框选中的方法
2015/02/17 Javascript
浅析Node.js中的内存泄漏问题
2015/06/23 Javascript
JavaScript实现非常简单实用的下拉菜单效果
2015/08/27 Javascript
Javascript基础之数组的使用
2016/05/13 Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
2016/10/26 Javascript
利用babel将es6语法转es5的简单示例
2017/12/01 Javascript
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
JS实现移动端在线签协议功能
2019/08/22 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
JavaScript实现点击图片换背景
2020/11/20 Javascript
Python备份Mysql脚本
2008/08/11 Python
python绘图方法实例入门
2015/05/19 Python
基于python的itchat库实现微信聊天机器人(推荐)
2019/10/29 Python
一文轻松掌握python语言命名规范规则
2020/06/18 Python
python和C++共享内存传输图像的示例
2020/10/27 Python
python中绕过反爬虫的方法总结
2020/11/25 Python
中东地区为妈妈们提供一切的头号购物目的地:Sprii
2018/05/06 全球购物
课程设计心得体会
2013/12/28 职场文书
小组名称和口号
2014/06/09 职场文书
2016高三毕业赠言寄语
2015/12/04 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
Python作用域和名称空间的详细介绍
2022/04/13 Python
mysql幻读详解实例以及解决办法
2022/06/16 MySQL