如何基于python实现归一化处理

yipeiwu_com6年前Python基础

这篇文章主要介绍了如何基于python实现归一化处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

        一、定义

  归一化方法有两种形式,一种是把数变为(0,1)之间的小数,一种是把有量纲表达式变为无量纲表达式。主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速。

  二、目的

  不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。其具体针对的是奇异样本数据,奇异样本数据指的是相对于其他输入样本特别大或特别小的样本矢量,如[0.34,0.51,0.44,222][0.34,0.51,0.44,128]中最后一列元素就是奇异样本数据。

  三、常见标准化方法

  1.最大-最小标准化映射到区间[0,1]

  2.Z-score标准化结果聚集在0附近方差为1

  四、矩阵的归一化

  矩阵的列归一化,就是将矩阵每一列的值,除以每一列所有元素平方和的绝对值,这样做的结果就是,矩阵每一列元素的平方和为1了。

  五、python归一化

  其中参数axis=0表示列也是跨行的意思axis=1表示行也是跨列的意思

  fromsklearn.preprocessingimportnormalize
  data=np.array([
  [1000,10,0.5],
  [765,5,0.35],
  [800,7,0.09],])
  data=normalize(data,axis=0,norm='max')
  print(data)
  >>[[1.1.1.]
  [0.7650.50.7]
  [0.80.70.18]]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python函数式编程实例详解

本文实例讲述了Python函数式编程。分享给大家供大家参考,具体如下: 函数式编程就是一种抽象程度很高的编程范式,从计算机硬件->汇编语言->C语言->Python抽象...

pyqt5 tablewidget 利用线程动态刷新数据的方法

pyqt5 tablewidget 利用线程动态刷新数据的方法

问题 知道要用线程,所以就先尝试写了一个线程,然后每次都获取数据,然后直接通过这种方法来朝table里面更新数据。 #python代码 table=MainWindow_ui.tab...

从运行效率与开发效率比较Python和C++

之前有人一直在说python怎么怎么好用,也有人说C++太难了,下面我做了一些笔记: 1、运行效率:C++ >> Python Python代码和C++最终都会变成CPU指令...

centos6.5安装python3.7.1之后无法使用pip的解决方案

编译安装全是坑…… 第一遍装完无法使用pip,报错找不到ssl模块。各种报错: pip is configured with locations that require TLS/SS...

python+numpy按行求一个二维数组的最大值方法

问题描述: 给定一个二维数组,求每一行的最大值 返回一个列向量 如: 给定数组【1,2,3;4,5,3】 返回[3;5] import numpy as np x = np.arr...