Python:sklearn中StandardScaler和scale的区别

StandardScaler和scale均为Z-score标准化,即减去均值µ除以标准差σ

而在进行数据标准化的时候,通常有两种方式:

1)将训练集和测试集统一进行标准化处理,此时均值和方差为整个数据的均值和方差

2)得到训练集的均值和标准差,用测试集的数据减去训练集的均值除以训练集的标准差。

在结果上来看,两种方法区别不大,不过第二种更偏向与实际应用场合。

StandardScaler可以预先生成规则,即生成训练集的均值与标准差,然后利用训练集的均值和标准差去分别标准化训练集和测试集!

有点像概率论里的,用训练集均值代替期望的感觉!

from sklearn.preprocessing import StandardScaler
zscore=StandardScaler().fit(raw_train_data)  # 按原始训练集生成规则,即训练的均值和标准差
train_data=zscore.transform(raw_train_data)  # 讲规则应用到训练集
test_data=zscore.transform(raw_test_data)  # 将规则应用到测试集

原文地址:https://www.cnblogs.com/weiyunpeng/p/12249308.html

时间: 2024-08-30 06:57:01

Python:sklearn中StandardScaler和scale的区别的相关文章

python类中super()和__init__()的区别

本文和大家分享的主要是python开发中super()和__init__()的区别,希望通过本文的分享,对初学者学习这部分内容有所帮助. 1.单继承时super()和__init__()实现的功能是类似的 class Base(object): def __init__(self): print 'Base create' class childA(Base): def __init__(self): print 'creat A ', Base.__init__(self) class chi

CSS中zoom和scale的区别

zoom和scale这两个东西都是用于对元素的缩放,但两者除了兼容性之外还有一些不同的地方.zoom缩放会将元素保持在左上角,而scale默认是中间位置,可以通过transform-origin来设置.另外他们执行的渲染顺序也不同zoom可能影响到盒子的计算.运行<!DOCTYPE html><style>div {  width:300px;height:100px;  border:1px solid #CCC;  font-size:0px;  line-height:100

Python类中的字段,方法,属性区别及StaticMethod, Property

类包含下列 静态属性 动态属性 静态方法 动态方法 class Province: #静态字段--属于类,调用方法类.字段名 memo = "中国23个省之一" #动态字段--属于对象,调用方式实例化对象.字段名 def __init__(self, name, capital, leader): self.Name = name self.Capital = capital self.Leader = leader #动态方法--属于对象 def sports_game(self):

FAQ:Python中*args和**agrs的区别

python提供了两种特别的方法来定义函数的参数: 1. 位置参数 *args,  把参数收集到一个元组中,作为变量args   >>>def show_args(*args):          #定义函数 print args >>>show_agrs("hello", "world")      #调用函数 输出:("hello","world") 2. 关键字参数 **kwargs,

python中linspace()和arange()的区别

python中linspace()和arange()的区别 今天无意间看到linspace(0,4,5)可以产生一个array([0,1,2,3,4])的数组,不知道里面的参数是什么,于是就有了这篇博文. linspace( ) linspace()通过指定开始值.终值和元素个数创建表示等差数列的一维数组,可以通过endpoint参数指定是否包含终值,默认值为True,即包含终值.看如下例子 arange( ) arange()通过指定开始值.终值(不包含终值)和步长创建表示等差数列的一维数组,

Python中type与Object的区别

Python中type与Object的区别 在查看了Python的API后,总算明白了.现在总结如下: 先来看object的说明: Python中关于object的说明很少,甚至只有一句话: class object The most base type 从介绍上看这也是Python对类型统一做出的努力.所以这里的object与Java的Object类有着异曲同工之妙,而且可以推测这个object很可能就是一个定义了一个类型的"空类" 再来看type的说明: class type(ob

python中split()和split(&#39; &#39;)的区别

总结:split()的时候,多个空格当成一个空格:split(' ')的时候,多个空格也要分割,会分割出来空. 例1: 牛客网:牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上.同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思.例如,"student. a am I".后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是"I am a student.".Cat对一一的翻转这些单词顺序可

Python中关键字is与==的区别

一.Python学习中几个相关的小知识 Python中的对象包含三要素: id. type.value id用来唯一表示一个对象 type标识对象的类型 value是对象的值 二.is与==的区别 is判断的是a对象是否就是b对象,是通过id来判断的 ==判断的是a对象的值是否和b对象的值相等,是通过value来判断的 三.示例 >>> a = 100>>> b = 100.0>>> a is bFalse>>> a == bTrue

Python中浅拷贝和深拷贝的区别

Python中浅拷贝和深拷贝的区别 浅拷贝和深拷贝示意图 如上图,简单点说 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2. copy.deepcopy 深拷贝 拷贝对象及其子对象 数字,字符串是不可变类型 列表,字典是可变类型 我们看下面的案例 案例一:浅拷贝 >>> import copy     #导入copy模块                >>> s=['name',['savings',100.0]] #赋值给s >