python数据标准化
def datastandard():
from sklearn import preprocessing
import numpy as np
x = np.array([
[ 1., -1., 2.],
[ 2., 0., 0.],
[ 0., 1., -1.]])
print('原始数据为:\n',x)
print('method1:指定均值方差数据标准化(默认均值0 方差 1):')
print('使用scale()函数 按列标准化')
x_scaled = preprocessing.scale(x)
print('标准化后矩阵为:\n',x_scaled,end='\n\n')
print('cur mean:', x_scaled.mean(axis=0), 'cur std:', x_scaled.std(axis=0))
print('使用scale()函数 按行标准化')
x_scaled = preprocessing.scale(x,axis=1)
print('标准化后矩阵为:\n',x_scaled,end='\n')
print('cur mean:', x_scaled.mean(axis=1), 'cur std:', x_scaled.std(axis=1))
print('\nmethod2:StandardScaler类,可以保存训练集中的参数')
scaler = preprocessing.StandardScaler().fit(x)
print('标准化前 均值方差为:',scaler.mean_,scaler.scale_)
print('标准化后矩阵为:\n',scaler.transform(x),end='\n\n')
print('***2.数据归一化,映射到区间[min,max]:')
min_max_scaler = preprocessing.MinMaxScaler(feature_range=(0,10))
print(min_max_scaler.fit_transform(x))
if __name__ == '__main__':
datastandard()
结果如下:
原始数据为:
[[ 1. -1. 2.]
[ 2. 0. 0.]
[ 0. 1. -1.]]
method1:指定均值方差数据标准化(默认均值0 方差 1):
使用scale()函数 按列标准化
标准化后矩阵为:
[[ 0. -1.22474487 1.33630621]
[ 1.22474487 0. -0.26726124]
[-1.22474487 1.22474487 -1.06904497]]
cur mean: [ 0. 0. 0.] cur std: [ 1. 1. 1.]
使用scale()函数 按行标准化
标准化后矩阵为:
[[ 0.26726124 -1.33630621 1.06904497]
[ 1.41421356 -0.70710678 -0.70710678]
[ 0. 1.22474487 -1.22474487]]
cur mean: [ 1.48029737e-16 7.40148683e-17 0.00000000e+00] cur std: [ 1. 1. 1.]
method2:StandardScaler类,可以保存训练集中的参数
标准化前 均值方差为: [ 1. 0. 0.33333333] [ 0.81649658 0.81649658 1.24721913]
标准化后矩阵为:
[[ 0. -1.22474487 1.33630621]
[ 1.22474487 0. -0.26726124]
[-1.22474487 1.22474487 -1.06904497]]
***2.数据归一化,映射到区间[min,max]:
[[ 5. 0. 10. ]
[ 10. 5. 3.33333333]
[ 0. 10. 0. ]]
python 常用代码
# coding:utf8
'''
提取文档中含有某个字符的所有行,并打印出来
'''
file_path = 'E:/gengyanpeng/义乌调研资料/客运gyp资料/keyun-bi.sql'
fix_str = 'FROM'
def print_line(txt,fix_str):
lines = txt.split('\n')
for line in lines:
if fix_str in line:
print(line.strip())
with open(file_path,'r+',encoding='utf8') as f:
text = f.read()
print_line(text,fix_str)
python数据标准化的更多相关文章
- python 数据标准化
- python数据分析数据标准化及离散化详解
python数据分析数据标准化及离散化详解 本文为大家分享了python数据分析数据标准化及离散化的具体内容,供大家参考,具体内容如下 标准化 1.离差标准化 是对原始数据的线性变换,使结果映射到[0 ...
- 数据标准化方法及其Python代码实现
数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间.目前数据标准化方法有多种,归结起来可以分为直线型方法(如极值法.标准差法).折线型方法(如三折线法).曲线型方法 ...
- 利用 pandas 进行数据的预处理——离散数据哑编码、连续数据标准化
数据的标准化 数据标准化就是将不同取值范围的数据,在保留各自数据相对大小顺序不变的情况下,整体映射到一个固定的区间中.根据具体的实现方法不同,有的时候会映射到 [ 0 ,1 ],有时映射到 0 附近的 ...
- Python数据预处理:机器学习、人工智能通用技术(1)
Python数据预处理:机器学习.人工智能通用技术 白宁超 2018年12月24日17:28:26 摘要:大数据技术与我们日常生活越来越紧密,要做大数据,首要解决数据问题.原始数据存在大量不完整.不 ...
- python data analysis | python数据预处理(基于scikit-learn模块)
原文:http://www.jianshu.com/p/94516a58314d Dataset transformations| 数据转换 Combining estimators|组合学习器 Fe ...
- sklearn5_preprocessing数据标准化
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
- 转:数据标准化/归一化normalization
转自:数据标准化/归一化normalization 这里主要讲连续型特征归一化的常用方法.离散参考[数据预处理:独热编码(One-Hot Encoding)]. 基础知识参考: [均值.方差与协方差矩 ...
- sklearn.preprocessing.StandardScaler数据标准化
原文链接:https://blog.csdn.net/weixin_39175124/article/details/79463993 数据在前处理的时候,经常会涉及到数据标准化.将现有的数据通过某种 ...
随机推荐
- pytest 失败用例重试
https://www.cnblogs.com/jinzhuduoduo/articles/7017405.html http://www.lxway.com/445949491.htm https: ...
- 我的Android进阶之旅------>android中getLocationInWindow 和 getLocationOnScreen的差别
View.getLocationInWindow(int[] location) 一个控件在其父窗体中的坐标位置 View.getLocationOnScreen(int[] location) 一个 ...
- 软件project文档中的数据库模型设计
背景:软件project文档之<数据库设计说明书>的结构设计部分要明白规划出数据库的概念结构设计.逻辑结构设计.物理结构设计,就是设计数据库的概念模型.逻辑模型.物理模型.那么.何为数据库 ...
- 冒泡排序Vs直接选择排序
什么是排序?为什么要使用排序?事实上我们生活中处处都用到了排序.拿字典来说,如今,我们要在字典中查找某个字(已经知道这个字的读音),首先.我们须要依据这个字的读音,找到它所所在文件夹中的位置,然后依据 ...
- 《Qt on Android核心编程》前言:为什么写作本书
2008年.我開始在CSDN写技术博客. 在此之前,我的理想是写出受人待见的小说来.我也以前在网络论坛上笔耕不辍获得一些成绩,也以前发表过一些散文以及小说.而那一年,当我再次拾起笔来写东西时.却选择了 ...
- storm 并行度
1个worker进程运行的是1个topology的子集(注:不会出现1个worker为多个topology服务).1个worker进程会启动1个或多个executor线程来运行1个topology的c ...
- hibernate初步2
Hibernate级联设计 数据库表之间的关系(主要关系有一对多.一对一.多对多)主要是从如下三个方面体现出来: 1.表体设计 2.实体类的设计 3.配置文件 以下是一些重要级联设计参数属性介绍: c ...
- codeforces 916E Jamie and Tree dfs序列化+线段树+LCA
E. Jamie and Tree time limit per test 2.5 seconds memory limit per test 256 megabytes input standard ...
- 73. 解决ExtJS TreePanel 的 iconCls设置问题
转自:https://blog.csdn.net/hanchuang213/article/details/62881568 很久没有写代码了,最近在做一个在线帮助网站,于是又捡起了 ExtJS,我用 ...
- vim gvim技巧大全(9)(转载)
vim gvim技巧大全(9) 2 用命令}移动到这个段落的底部,标记为b3 输入命令:'a,'b move来移动文本.老版本的Vi编辑器不能很好的来处理多文件.但是Vim在处理多文件上却显得优秀得多 ...