python数据分析数据标准化及离散化详解


Posted in Python onFebruary 26, 2018

本文为大家分享了python数据分析数据标准化及离散化的具体内容,供大家参考,具体内容如下

标准化

1、离差标准化

是对原始数据的线性变换,使结果映射到[0,1]区间。方便数据的处理。消除单位影响及变异大小因素影响。
基本公式为:

x'=(x-min)/(max-min)

代码:

#!/user/bin/env python
#-*- coding:utf-8 -*-
#author:M10
import numpy as np
import pandas as pd
import matplotlib.pylab as plt
import mysql.connector
conn = mysql.connector.connect(host='localhost',
            user='root',
            passwd='123456',
            db='python')#链接本地数据库
sql = 'select price,comment from taob'#sql语句
data = pd.read_sql(sql,conn)#获取数据
#离差标准化
data1 = (data-data.min())/(data.max()-data.min())
print(data1)

运行结果

python数据分析数据标准化及离散化详解

2、标准差标准化

消除单位影响以及变量自身变异影响。(零-均值标准化)
基本公式为:

x'=(x-平均数)/标准差

python代码:

#!/user/bin/env python
#-*- coding:utf-8 -*-
#author:M10
import numpy as np
import pandas as pd
import matplotlib.pylab as plt
import mysql.connector
conn = mysql.connector.connect(host='localhost',
            user='root',
            passwd='123456',
            db='python')#链接本地数据库
sql = 'select price,comment from taob'#sql语句
data = pd.read_sql(sql,conn)#获取数据
#标准差标准化
data1 = (data-data.mean())/data.std()
print(data1)

运行结果:

python数据分析数据标准化及离散化详解

3、小数定标标准化

消除单位影响
基本公式为:
其中j=lg(max(|x|)),即以10为底的x的绝对值最大的对数

x' = x/10^j

实现代码为:

#!/user/bin/env python
#-*- coding:utf-8 -*-
#author:M10
import numpy as np
import pandas as pd
import matplotlib.pylab as plt
import mysql.connector
conn = mysql.connector.connect(host='localhost',
            user='root',
            passwd='123456',
            db='python')#链接本地数据库
sql = 'select price,comment from taob'#sql语句
data = pd.read_sql(sql,conn)#获取数据
#标准差标准化
j = np.ceil(np.log10(data.abs().max()))#进一取整,abs()为取绝对值
data1 = data/10**j
print(data1)

结果:

python数据分析数据标准化及离散化详解

离散化

离散化是程序设计中一个常用的技巧,它可以有效的降低时间复杂度。其基本思想就是在众多可能的情况中,只考虑需要用的值。离散化可以改进一个低效的算法,甚至实现根本不可能实现的算法

1、等宽离散化

将连续数据按照等宽区间标准离散化数据,好处之一是处理的数据是有限个数据而不是无限多。
使用pandas的cut方法。非等宽只需要更改cut的第二个参数,例如:第二个参数为[1,100,3000,10000,200000],即划分为了四个区间。

#!/user/bin/env python
#-*- coding:utf-8 -*-
#author:M10
import numpy as np
import pandas as pd
import matplotlib.pylab as plt
import mysql.connector
conn = mysql.connector.connect(host='localhost',
            user='root',
            passwd='123456',
            db='python')#链接本地数据库
sql = 'select price,comment from taob'#sql语句
data = pd.read_sql(sql,conn)#获取数据
#离散化
data1 = data['price'].T.values#获取价格的一维数组
lable=['很低','低','中','高','很高']
data2 = pd.cut(data1,5,labels=lable)
print(data2)

执行结果:

python数据分析数据标准化及离散化详解

2、等频率离散化

将相同数量的数据放进一个区间。

3、一维聚类离散化

按属性对数据进行聚类离散。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现给字典添加条目的方法
Sep 25 Python
python根据出生年份简单计算生肖的方法
Mar 27 Python
Python编程修改MP3文件名称的方法
Apr 19 Python
Python利用flask sqlalchemy实现分页效果
Aug 02 Python
python 动态加载的实现方法
Dec 22 Python
Python处理命令行参数模块optpars用法实例分析
May 31 Python
python微元法计算函数曲线长度的方法
Nov 08 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
Dec 12 Python
python3 实现函数写文件路径的正确方法
Nov 27 Python
Python @property装饰器原理解析
Jan 22 Python
python求最大公约数和最小公倍数的简单方法
Feb 13 Python
python 网络编程要点总结
Jun 18 Python
批量将ppt转换为pdf的Python代码 只要27行!
Feb 26 #Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
Feb 26 #Python
python3利用Dlib19.7实现人脸68个特征点标定
Feb 26 #Python
python微信跳一跳系列之棋子定位颜色识别
Feb 26 #Python
python微信跳一跳系列之棋子定位像素遍历
Feb 26 #Python
python3.6+opencv3.4实现鼠标交互查看图片像素
Feb 26 #Python
python微信跳一跳系列之自动计算跳一跳距离
Feb 26 #Python
You might like
提取HTML标签
2006/10/09 PHP
php两种无限分类方法实例
2015/04/21 PHP
JavaScript实现删除电脑的关机键
2016/07/26 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
php实现数组中出现次数超过一半的数字的统计方法
2018/10/14 PHP
ExtJS 设置级联菜单的默认值
2010/06/13 Javascript
js控制的回到页面顶端goTop的代码实现
2013/03/20 Javascript
js实现获取焦点后光标在字符串后
2014/09/17 Javascript
JavaScript获取页面中第一个锚定文本的方法
2015/04/03 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用
2016/01/23 Javascript
Angular工具方法学习
2016/12/26 Javascript
vue实现图片滚动的示例代码(类似走马灯效果)
2018/03/03 Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
2018/12/23 Javascript
Python常用小技巧总结
2015/06/01 Python
python 基础教程之Map使用方法
2017/01/17 Python
Python 爬虫之超链接 url中含有中文出错及解决办法
2017/08/03 Python
浅谈用VSCode写python的正确姿势
2017/12/16 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
python中p-value的实现方式
2019/12/16 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
Python 如何展开嵌套的序列
2020/08/01 Python
python爬取2021猫眼票房字体加密实例
2021/02/19 Python
利用CSS3实现文本框的清除按钮相关的一些效果
2015/06/23 HTML / CSS
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
意大利巧克力店:Chocolate Shop
2019/07/24 全球购物
怀旧香味蜡烛:Homesick
2019/11/02 全球购物
密封类可以有虚函数吗
2014/08/11 面试题
干部培训自我鉴定
2014/01/22 职场文书
小学教师办公室制度
2014/02/03 职场文书
副董事长岗位职责
2014/04/02 职场文书
地球一小时倡议书
2014/04/15 职场文书
质量主管工作职责
2014/09/26 职场文书
教师学习群众路线心得体会
2014/11/04 职场文书
vue响应式原理与双向数据的深入解析
2021/06/04 Vue.js
Python基本知识点总结
2022/04/07 Python