本篇文章给大家分享的内容是python归一化多维数组的方法 ,具有一定的参考价值,有需要的朋友参考一下

今天遇到需要归一化多维数组的问题,但是在网上查阅了很多资料都是归一化数组的一行或者一列,对于怎么归一化一个多维数组的资料比较少,可是在tensorflow中为了训练神经网络常常需要用到多维数据。因此归一化多维数组非常有必要。

在查阅了大量资料之后发现在sklearn库中的preprocessing可以直接归一化多维数组。

1、使用sklearn.preprocessing.scale()函数,对给定数据进行标准化:具体公式是(x - mean)/std。其含义是:对每一列的数据减去这一列的均值,然后除以这一列数据的标准差。最终得到的数据都在0附近,方差为1。具体程序示例如下:from sklearn import preprocessing

data_normal = preprocessing.scale(data)#data是多维数据

2、使用sklearn.preprocessing.StandardScaler类,这个类可以计算每一列数据的均值和方差,并根据均值和方差直接把原始数据归一化。简单示例如下:from sklearn import preprocessing

#计算原始数据每行和每列的均值和方差,data是多维数据

scaler = preprocessing.StandardScaler().fit(data)

#得到每列的平均值,是一维数组

mean = scaler.mean_

#得到每列的标准差,是一维数组

std = scaler.std_

#标准化数据

data_nomal = scaler.transform(data)

#可以直接使用训练集对测试集数据进行转换

scaler.transform([[-1., 1., 0.]])

3、sklearn.preprocessing.MinMaxScaler类把数据缩放到一个指定的范围。具体示例如下:from sklearn import preprocessing

min_max_scaler = preprocessing.MinMaxScaler()

#标准化训练集数据

data_train_nomal = min_max_scaler.fit_transform(data_train)

#对测试集数据进行相同的归一化处理

data_test_minmax = min_max_scaler.transform(data_test)

#获取缩放因子属性,结果是一维数组

min_max_scaler.scale_

min_max_scaler.min_

4、附sklearn.preprocessing还可以做正则化

(1)preprocessing.normalize()对数据做正则化转换data_normalized = preprocessing.normalize(data, norm='l2')

(2)preprocessing.Normalizer()先拟合数据再对数据进行正则化变换normalizer = preprocessing.Normalizer().fit(data) #拟合原始数据,data是多维数组

normalizer.transform(data) #正则化

相关推荐:

python字符串如何转为二维数组

python分治法求二维数组局部峰值方法_python

python使用如下方法规范化数组_python归一化多维数组的方法相关推荐

  1. python多维数组拟合_python归一化多维数组的方法

    本篇文章给大家分享的内容是python归一化多维数组的方法 ,具有一定的参考价值,有需要的朋友参考一下 今天遇到需要归一化多维数组的问题,但是在网上查阅了很多资料都是归一化数组的一行或者一列,对于怎么 ...

  2. python输入二维数组_Python输入二维数组方法

    Python输入二维数组方法 前不久对于Python输入二维数组有些不解,今日成功尝试,记以备忘.这里以输入1-9,3*3矩阵为例 n=int(input()) line=[[0]*n]*n for ...

  3. python 数组_python之多维数组(一)

    Numpy中定义的最终对象是称为ndarray的N维数组类型.它描述相同类型的元素集合.可以使用基于零的索引访问集合中的项目. ndarray创建方式 array()函数 接收一个普通的python序 ...

  4. python中遍历二维数组_python遍历二维数组-女性时尚流行美容健康娱乐mv-ida网

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 二 维 数组 5.2.1 二 ...

  5. python怎么创建一个二维数组_python 创建二维数组的方法

    废话不多说,直接上代码: #coding=utf-8 def two_di_demo1(): a=[] for i in range(10): a.append([]) for j in range( ...

  6. python二维数组排序_Python实现二维数组按照某行或列排序的方法【numpy lexsort】...

    本文实例讲述了Python实现二维数组按照某行或列排序的方法.分享给大家供大家参考,具体如下: lexsort支持对数组按指定行或列的顺序排序:是间接排序,lexsort不修改原数组,返回索引. (对 ...

  7. python二维列表的展开_python将三维数组展开成二维数组的实现

    这篇文章尝试用"曲线救国"的方法来解决二维数组叠加成三维数组的问题. 但天道有轮回,苍天绕过谁.好不容易把数组叠加在一块儿了,新的需求又出现了:将三维数组展开成二维数组.有借有还, ...

  8. python 字符串数组_python用法笔记(数组(list、touple、dict)、字符串)

    1.产生n个全为1的数组 a=[1]*n 2.字符数字转化 int('12') float('12.5') str(123.45) ASCII码转为相应的字符:chr(97) 字符转化为相应的ASCI ...

  9. python 将三维数据转为二维_python将三维数组展开成二维数组的实现

    这篇文章尝试用"曲线救国"的方法来解决二维数组叠加成三维数组的问题. 但天道有轮回,苍天绕过谁.好不容易把数组叠加在一块儿了,新的需求又出现了:将三维数组展开成二维数组.有借有还, ...

最新文章

  1. 西湖大学鞠峰:环境微生物宏基因组学(报告视频+PPT,11月23日)
  2. linux 内核调试 booting the kernel.,Uncompressing Linux...done, booting the kernel解决办法
  3. mysql 启动参数_MySQL启动相关参数 MySQL DBA学习
  4. vue+django2.0.2-rest-framework 生鲜项目(八)
  5. 关于ueditor多图上传加水印
  6. 智游推送教你如何使用统计图表辅助运营
  7. Github带来的不止是开源,还有折叠的认知
  8. java io体系_java IO流的体系结构图
  9. 解决一个I2C读写问题
  10. 网络知识 -- 第二部
  11. 知到/智慧树 课程问答讨论开启复制粘贴
  12. 联系人存储ContactsProvider表分析
  13. php获取当前网址附带(http://或者https//)
  14. 2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest
  15. 【Python代码实践】使用Python批量获取雨课堂图片
  16. 安防天下1——视频监控技术概述及相关基础了解
  17. 计算机网络技术有关的心得体会,计算机网络技术学习心得体会
  18. 报名有奖|相约2020 RT-Thread 开发者大会RDC
  19. 画质超高的仙侠java游戏_画质超高的仙侠手游
  20. 删除所有用户数据!永久关闭

热门文章

  1. 事务的基本概念,Mysql事务处理原理
  2. 一文彻底读懂优秀开源产品MyBatis一级缓存设计!
  3. 【消息队列MQ】各类MQ比较
  4. 【JEECG Docker安装】CentOS6下docker的安装和使用
  5. 开发指南专题七:JEECG微云快速开发平台查询HQL过滤器
  6. ORA-28000: the account is locked的解决办法
  7. Linux系统:Centos7搭建Redis单台和集群环境
  8. 简述 JavaScript 作用域与词法分析
  9. SQL-22 统计各个部门对应员工涨幅的次数总和,给出部门编码dept_no、部门名称dept_name以及次数sum...
  10. Requests+正则爬取猫眼电影TOP100