为了账号安全,请及时绑定邮箱和手机立即绑定

数据的标准化与中心化以及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,] -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为真表示数据标准化


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消