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中文件遍历的两种方法
Jun 16 Python
python实现根据用户输入从电影网站获取影片信息的方法
Apr 07 Python
Python使用wxPython实现计算器
Jan 30 Python
用django-allauth实现第三方登录的示例代码
Jun 24 Python
docker django无法访问redis容器的解决方法
Aug 21 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
Nov 19 Python
python实现宿舍管理系统
Nov 22 Python
Django集成celery发送异步邮件实例
Dec 17 Python
Python生成随机验证码代码实例解析
Jun 09 Python
拿来就用!Python批量合并PDF的示例代码
Aug 10 Python
详解如何使用Pytest进行自动化测试
Jan 14 Python
OpenCV-Python 实现两张图片自动拼接成全景图
Jun 11 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图片的二进制转换实现方法
2014/12/15 PHP
Linux系统下使用XHProf和XHGui分析PHP运行性能
2015/12/08 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
JavaScript this 深入理解
2009/07/30 Javascript
ASP.NET MVC中EasyUI的datagrid跨域调用实现代码
2012/03/14 Javascript
js中indexof的用法详细解析
2013/12/24 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
js中的setInterval和setTimeout使用实例
2014/05/09 Javascript
JS JQUERY实现滚动条自动滚到底的方法
2015/01/09 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
2015/03/02 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
js实现对ajax请求面向对象的封装
2016/01/08 Javascript
JS轮播图中缓动函数的封装
2020/11/25 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
jQuery实现页码跳转式动态数据分页
2017/12/31 jQuery
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
Angular6 正则表达式允许输入部分中文字符
2018/09/10 Javascript
在 Vue 中使用 JSX 及使用它的原因浅析
2020/02/10 Javascript
JavaScript实现切换多张图片
2021/01/27 Javascript
[01:01:31]2018DOTA2亚洲邀请赛3月29日小组赛B组 Mineski VS paiN
2018/03/30 DOTA
Python实现的彩票机选器实例
2015/06/17 Python
Python编程中的异常处理教程
2015/08/21 Python
Python常见工厂函数用法示例
2018/03/21 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
python接口自动化如何封装获取常量的类
2019/12/24 Python
python实现秒杀商品的微信自动提醒功能(代码详解)
2020/04/27 Python
Python嵌入C/C++进行开发详解
2020/06/09 Python
Python如何使用神经网络进行简单文本分类
2021/02/25 Python
红色康乃馨酒店:Red Carnation Hotels
2017/06/22 全球购物
一套英文Java笔试题面试题
2016/04/21 面试题
花卉与景观设计系大学生求职信
2013/10/01 职场文书
2015年班组建设工作总结
2015/05/13 职场文书
企业安全生产规章制度
2015/08/06 职场文书
C站最全Python标准库总结,你想要的都在这里
2021/07/03 Python
Python开发五子棋小游戏
2022/05/02 Python
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android