zoukankan      html  css  js  c++  java
  • python数据标准化

    def datastandard():
      from sklearn import preprocessing
      import numpy as np
      x = np.array([
        [ 1., -1.,  2.],
        [ 2.,  0.,  0.],
        [ 0.,  1., -1.]])
      print('原始数据为:
    ',x)
    
      print('method1:指定均值方差数据标准化(默认均值0 方差 1):')
      print('使用scale()函数 按列标准化')
      x_scaled = preprocessing.scale(x)
      print('标准化后矩阵为:
    ',x_scaled,end='
    
    ')
      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('标准化后矩阵为:
    ',x_scaled,end='
    ')
      print('cur mean:', x_scaled.mean(axis=1), 'cur std:', x_scaled.std(axis=1))
    
      print('
    method2:StandardScaler类,可以保存训练集中的参数')
      scaler = preprocessing.StandardScaler().fit(x)
      print('标准化前 均值方差为:',scaler.mean_,scaler.scale_)
      print('标准化后矩阵为:
    ',scaler.transform(x),end='
    
    ')
    
      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('
    ')
      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)
  • 相关阅读:
    P4839 P哥的桶 题解(线段树维护线性基)
    线性基入门
    Lowest Common Ancestor 题解(lca+思维)
    B
    java string对象的简单方法
    AtCoder Grand Contest 016 D
    FFT
    回文自动机(BZOJ2565)
    二维RMQ
    AC自动机(BZOJ1030)
  • 原文地址:https://www.cnblogs.com/jyxbk/p/8624561.html
Copyright © 2011-2022 走看看