zoukankan      html  css  js  c++  java
  • R语言的scale函数

    1、数据的中心化

    所谓数据的中心化是指数据集中的各项数据减去数据集的均值。

    例如有数据集1, 2, 3, 6, 3,其均值为3

    那么中心化之后的数据集为1-3,2-3,3-3,6-3,3-3,即:-2,-1,0,3,0

    2、数据的标准化

    所谓数据的标准化是指中心化之后的数据在除以数据集的标准差,即数据集中的各项数据减去数据集的均值再除以数据集的标准差。

    例如有数据集1, 2, 3, 6, 3,其均值为3,其标准差为1.87

    那么标准化之后的数据集为(1-3)/1.87,(2-3)/1.87,(3-3)/1.87,(6-3)/1.87,(3-3)/1.87,即:-1.069,-0.535,0,1.604,0

     

    数据中心化和标准化的意义是一样的,为了消除量纲对数据结构的影响。

    在R语言中可以使用scale方法来对数据进行中心化和标准化:

    #限定输出小数点后数字的位数为3位

    > options(digits=3)
    > data <- c(1, 2, 3, 6, 3)

    #数据中心化

    > scale(data, center=T,scale=F)
    [,1] [1,] -2 [2,] -1 [3,] 0 [4,] 3 [5,] 0
    attr(,"scaled:center")
    [1] 3

    #数据标准化

    > scale(data, center=T,scale=T)
    [1,] -1.06904 [2,] -0.53452 [3,] 0.00000 [4,] 1.60357 [5,] 0.00000 
    attr(,"scaled:center")
    [1] 3
    attr(,"scaled:scale")
    [1] 1.8708

     

    scale方法中的两个参数center和scale的解释:

    1)center和scale默认为真,即T或者TRUE

    2)center为真表示数据中心化

    3)scale为真表示数据标准化

     

  • 相关阅读:
    包装类
    项目基础架构搭建
    开发环境的搭建和Shell编程
    Linux系统概述和编程基础
    java.lang.ExceptionInInitializerError
    mybatis中文文档
    如何造轮子
    Application Server was not connected before run configuration stop, reason: Unable to ping server at localhost:1099
    JDK 1.7与JDK 1.8版本的完美切换
    JDBC连接步骤
  • 原文地址:https://www.cnblogs.com/hunttown/p/5507892.html
Copyright © 2011-2022 走看看