【Python学习】数据归一化Scaling与标准化Normalization间的区别与相关实现
1、区别介绍
(1)Scaling
归一化用于将数据归一到某一个范围,如[0,1]或者[0,10],主要是范围上的变化
(2)Normalization
标准化用于改变数据的分布情况,通过将数据分布转变成正态分布
2、适用场景
(1)Scaling
当应用与距离与相似度度量的时候,归一化起到弥足关键的作用,如支持向量机(SVM)和K近邻算法(KNN)
(2)Normalization
当应用要求数据满足正态分布时,对原始数据进行标准化操作,将有利于算法的进行,如线性判别器 (LDA)和高斯朴素贝叶斯(Gaussian naive Bayes)
3、代码实现
(0)导入函数库
#modules we'll use
import pandas as pd
import numpy as np
#for Box-Cox Transformation
from scipy import stats
#for min_max scaling
from mlxtend.preprocessing import minmax_scaling
#plotting modules
import seaborn as sns
import matplotlib.pyplot as plt
#set seed for reproducibility
np.random.seed(0)
(1)Scaling
#generate 1000 data points randomly drawn from an exponential distribution
original_data = np.random.exponential(size=1000)
#mix-max scale the data between 0 and 1
scaled_data = minmax_scaling(original_data, columns=[0])
#plot both together to compare
fig, ax = plt.subplots(1,2)
sns.distplot(original_data, ax=ax[0])
ax[0].set_title("Original Data")
sns.distplot(scaled_data, ax=ax[1])
ax[1].set_title("Scaled data")
结果显示
可以从上图中看出,原数据的范围分布在0到8之间,经归一化转变后的数据分布在0到1之间
(2)Normalization
#normalize the exponential data with boxcox
normalized_data = stats.boxcox(original_data)#plot both together to compare
fig, ax=plt.subplots(1,2)
sns.distplot(original_data, ax=ax[0])
ax[0].set_title("Original Data")
sns.distplot(normalized_data[0], ax=ax[1])
ax[1].set_title("Normalized data")
结果显示
从图中可以看出,经标准化操作后的数据分布服从正态分布
【Python学习】数据归一化Scaling与标准化Normalization间的区别与相关实现相关推荐
- python归一化处理_详解python实现数据归一化处理的方式:(0,1)标准化
在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...
- python怎么数据归一化_基于数据归一化以及Python实现方式
数据归一化: 数据的标准化是将数据按比例缩放,使之落入一个小的特定区间,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权. 为什么要做归一化: 1)加快梯度下降 ...
- Python 实现数据归一化处理
字符类型不能归一化... 数据处理经常要用到归一化处理,使各项指数的尺度达到统一,python中实现数据归一化处理的代码如下: #准备工作:安装numpy.pandas包,csv文件转为数值型,之后修 ...
- python实现数据的批量max-min标准化,告别反复的EXCEL操作
虽然EXCEL能够胜任此项工作,但是写论文时反复处理数据也很麻烦,每次处理数据都以为是最后一次,结果是永无止境. 因此,本篇基于pandas库,点击即可完成数据的批量max-min标准化. 使用前需要 ...
- Python学习之 a == b 和 a is b 的区别
Python学习中经常会遇到 a == b 和 a is b 的问题, 也许你会为此迷惑.下面,我们来简单分析一下: 首先我们要了解对于Python对象而言,一般存在三个属性:type 类型, val ...
- python实现数据归一化处理的方式:(0,1)标准化
在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...
- python归一化后全部都是0咋办_详解python实现数据归一化处理的方式:(0,1)标准化...
在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...
- python 归一化处理_详解python实现数据归一化处理的方式:(0,1)标准化
在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...
- python怎么数据归一化_python数据归一化及三种方法详解
数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可 ...
最新文章
- 怎样用matlab打开mw文,C# matlab混合编程 MWArray使用笔记
- bootloader烧写
- bigdecimal 和负数比较_Java中BigDecimal精度和相等比较的坑
- windows如何安装python-手把手教你如何在windows系统安装python?
- 构造全自动计算的CPU
- “365算法每日学计划”:05打卡-图解冒泡排序(多解法)
- 鸿蒙大陆武器合成,鸿蒙大陆9.1攻略(附隐藏英雄密码)
- 分享一些好用的 Chrome 扩展
- X509证书认证流程介绍
- 32位CentOS系统安装kernel-PAE支持4g以上内存
- python 命令模式 设计模式_Python 设计模式——命令模式
- http与https与socket tcp/IP与UDP 协议等
- 啥?喝着阔落吃着西瓜就把Promise手写出来了???
- 各层电子数排布规则_原子核外电子排布规律性质-1~36号原子结构示意图-电子层排布规律...
- Status Register ST1 状态寄存器 (28335)
- [转]“荒”是民工用脚投票的权利自救
- 韶大talk 评论热度抽取
- 【计算机网络】,java基础教程从入门到精通
- Java 创建pdf
- 云南怒江---地狱与天堂的边缘
热门文章
- CityMaker研修之路 02 伟景行(CityMaker)的倾斜之路
- java中接口可以继承接口吗?
- 全国计算机建模三等奖,青春榜样 | 吴昊 : 守得云开见月明
- druid监控无法关闭(坑),及处理方式
- 为了反击爬虫,前端工程师的脑洞可以有多大?
- Android 自定义TabLayout
- ETL工程师系列课程_Oracle数据库
- c语言编译配置文件出错,Android4.4/CM11编译常见错误及解决方法!
- sublime text3--js智能提示插件以及其他常用插件
- 史上最全Maven教程(一)