#数据集

x<-cbind(c(1,2,3,4),c(5,5,10,20),c(3,6,9,12))

#自己写标准化

x_min_temp<-apply(x,2,min) 
x_min<-matrix(rep(x_min_temp,4),byrow=TRUE,ncol=3)#需要输入行数和列数
abs(x-x_min)#当前值减去均值
x_extreme_temp<-apply(x,2,max)-apply(x,2,min)
x_extreme<-matrix(rep(x_extreme_temp,4),byrow=TRUE,ncol=3)#需要输入行数和列数
abs(x-x_min)/x_extreme

#sweep函数

center <- sweep(x, 2, apply(x, 2, min),'-') #在列的方向上减去最小值,不加‘-’也行
R <- apply(x, 2, max) - apply(x,2,min)   #算出极差,即列上的最大值-最小值
x_star<- sweep(center, 2, R, "/")        #把减去均值后的矩阵在列的方向上除以极差向量

#sweep函数更简洁、易懂,且不需要输入行数和列数,二者性能也差不多

#sweep再举一个例子哈
m<-matrix(c(1:9),byrow=TRUE,nrow=3)
#第一行都加1,第二行都加4,第三行都加7
sweep(m, 1, c(1,4,7), "+")

#scale函数,这个比较简单,不多说
scale(x, center = TRUE, scale = TRUE)

有些地方说归一化,有些地方说标准化,万能的CSDN,谁能告诉我归一化和标准化的区别?

2019年补充,

归一化一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。
z-score适用于属性A的最大值和最小值未知的情况(此时归一化已经不合适了,哈哈),或有超出取值范围的离群数据的情况(此时归一化的效果也不好了,哈哈);该种方式要求原始数据的分布可以近似为高斯分布,否则归一化的效果会变得很糟糕【这一条我也不是很确认】。

R语言标准化(归一化)之scale()函数、sweep()函数相关推荐

  1. r语言min-max归一化_如何在R中使用min()和max()

    r语言min-max归一化 Finding min and max values is pretty much simple with the functions min() and max() in ...

  2. R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤、条件推理决策树是传统决策树的一个重要变体、条件推理树的分裂是基于显著性测试而不是熵/纯度/同质性度量来选择分裂

    R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤(Conditional inference trees).条件推理决策树是传统决策树的一个重要变体.条件推理树的分裂是基于显著性 ...

  3. R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如、粗体、斜体等

    R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如.粗体.斜体等 目录

  4. R语言使用caret包中的createFolds函数对机器学习数据集进行交叉验证抽样、返回的样本列表长度为k个

    R语言使用caret包中的createFolds函数对机器学习数据集进行交叉验证抽样.返回的样本列表长度为k个 目录

  5. R语言使用ggplot2包的快速可视化函数qplot绘制基础密度图实战

    R语言使用ggplot2包的快速可视化函数qplot绘制基础密度图实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制基础密度图实战 #仿真数据

  6. R语言使用ggplot2包的快速可视化函数qplot绘制分组点图(带状图)并配置分组颜色实战

    R语言使用ggplot2包的快速可视化函数qplot绘制分组点图(带状图)并配置分组颜色实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制分组点图(带状图)并配置分组颜色实战 #仿真 ...

  7. R语言使用ggplot2包的快速可视化函数qplot绘制分组箱图(jitter、分组颜色配置)实战

    R语言使用ggplot2包的快速可视化函数qplot绘制分组箱图(jitter.分组颜色配置)实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制分组箱图(jitter.分组颜色配置) ...

  8. R语言使用ggplot2包的快速可视化函数qplot绘制密度图(主题、轴标签设置)实战

    R语言使用ggplot2包的快速可视化函数qplot绘制密度图(主题.轴标签设置)实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制密度图(主题.轴标签设置)实战 #仿真数据

  9. R语言使用ggplot2包的快速可视化函数qplot绘制散点图实战

    R语言使用ggplot2包的快速可视化函数qplot绘制散点图实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制散点图实战 #仿真数据

  10. R语言使用ggplot2包的快速可视化函数qplot绘制基础直方图实战

    R语言使用ggplot2包的快速可视化函数qplot绘制基础直方图实战 目录 R语言使用ggplot2包的快速可视化函数qplot绘制基础直方图实战 #仿真数据

最新文章

  1. Akka的Actor编程
  2. python读数据-如何用 Python 读取数据?
  3. python程序实例电话本-利用Python电话本小程序!这波操作你给几分?
  4. muduo之EventLoopThread
  5. LINUX 使用tcgetattr函数与tcsetattr函数控制终端五
  6. java反射机制和junit的使用
  7. 限制RICHTEXTBOX的输入的范围
  8. iPhone 12 Pro系列终于不怕弯了!
  9. 用JSF实现页面刷新后,checkbox仍处于选中状态
  10. 免费数据恢复软件恢复SanDisk丢失的资料
  11. 资质申报 - 系统集成企业资质等级评定条件实施细则
  12. 墨刀和axure你应该用哪个?
  13. 1.3.1 互联网的边缘部分(资源子网)
  14. 数值积分——梯形公式和Simpson公式
  15. sqlilabs Less-8 盲注浅学习
  16. 符号在excel中的引用_如何在Excel中添加项目符号
  17. MFC鼠标绘制直线段并使用编码裁剪算法
  18. 高阶常微分方程的数值解法(runge-kutta的高阶形式)
  19. manjaro双系统 windows_Linux manjaro与Windows10双系统安装
  20. 非全日制大专怎么考全日制本科

热门文章

  1. 中国移动提出的ABCDNETS和DSSN数联网技术介绍
  2. Android 仿QQ讨论组头像
  3. 50多亿条个人信息泄露,背后竟有“内鬼”作祟
  4. web前端性能SEO优化
  5. 神探程序员,带你千里捉小三!
  6. 珠宝商城小程序开发的价值和优势
  7. 作为程序员该了解的8条冷知识
  8. php安装vld扩展
  9. 分片、侧链、状态通道、子链、DAG 是什么 区别
  10. codeforce能用万能头文件吗_iOS攻防(四):使用Dumpdecrypted 砸壳 class-dump 导出头文件...