R语言︱数据规范化、归一化
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
笔者寄语:规范化主要是因为数据受着单位的影响较大,需要进行量纲化。大致有:最小-最大规范化、均值标准化、小数定标规范化
数据中心化和标准化的意义是一样的,为了消除量纲对数据结构的影响。
1、最小-最大规范化——标准化
也叫离差标准化,是对原始数据的线性变换,将数据映射到[0,1]之间,与功效系数法相同。
标准化 x-min(x) / max(x)-min(x)
#最小-最大规范化 b1=(data[,1]-min(data[,1]))/(max(data[,1])-min(data[,1])) b2=(data[,2]-min(data[,2]))/(max(data[,2])-min(data[,2])) b3=(data[,3]-min(data[,3]))/(max(data[,3])-min(data[,3])) b4=(data[,4]-min(data[,4]))/(max(data[,4])-min(data[,4])) data_scatter=cbind(b1,b2,b3,b4)
2、均值标准化法——正态化
正态标准差标准化、零均值规范化等方法,经过处理的数据均值为0,标准差为1。公式为:
x*=(x-均值)/标准差
因为均值受离群值影响较大,也可以将均值替换成变量的中位数。
#零-均值规范化 data_zscore=scale(data)
3、小数定标规范化
移动变量的小数点位置来将变量映射到[-1,1]
#小数定标规范化 i1=ceiling(log(max(abs(data[,1])),10))#小数定标的指数 c1=data[,1]/10^i1 i2=ceiling(log(max(abs(data[,2])),10)) c2=data[,2]/10^i2 i3=ceiling(log(max(abs(data[,3])),10)) c3=data[,3]/10^i3 i4=ceiling(log(max(abs(data[,4])),10)) c4=data[,4]/10^i4 data_dot=cbind(c1,c2,c3,c4) #打印结果 options(digits = 4)#控制输出结果的有效位数 data_dot
代码中,log(x,10)是ln(x)一样;
options可以控制保留四位数小数
4、还原标准化的方法
preds=norm.data*sd(data)+mean(data)#还原标准化的数据
5、R语言中的scale函数
scale方法中的两个参数center和scale的解释:
1.center和scale默认为真,即T或者TRUE
2.center为真表示数据中心化
3.scale为真表示数据标准化
中心化=源数据-均值
标准化==中心化之后的数据在除以数据集的标准差,即数据集中的各项数据减去数据集的均值再除以数据集的标准差。
例如有数据集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
那么以下几种情况是啥意思:
scale(x)=scale(x,center=T,scale=T),默认设置 scale(x,center=F,scale=T)代表不进行中心化,直接做标准化; scale(x,center=T,scale=F)代表中心化 scale(x,center=F,scale=F)代表什么不做,是原来的数据列。
那么与apply族联用就是apply(x,1,scale)
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
R语言︱数据规范化、归一化的更多相关文章
- R语言数据预处理
R语言数据预处理 一.日期时间.字符串的处理 日期 Date: 日期类,年与日 POSIXct: 日期时间类,精确到秒,用数字表示 POSIXlt: 日期时间类,精确到秒,用列表表示 Sys.date ...
- R语言数据接口
R语言数据接口 R语言处理的数据一般从外部导入,因此需要数据接口来读取各种格式化的数据 CSV # 获得data是一个数据帧 data = read.csv("input.csv" ...
- R语言数据的导入与导出
1.R数据的保存与加载 可通过save()函数保存为.Rdata文件,通过load()函数将数据加载到R中. > a <- 1:10 > save(a,file='d://data/ ...
- R语言 数据重塑
R语言数据重塑 R语言中的数据重塑是关于改变数据被组织成行和列的方式. 大多数时间R语言中的数据处理是通过将输入数据作为数据帧来完成的. 很容易从数据帧的行和列中提取数据,但是在某些情况下,我们需要的 ...
- 最棒的7种R语言数据可视化
最棒的7种R语言数据可视化 随着数据量不断增加,抛开可视化技术讲故事是不可能的.数据可视化是一门将数字转化为有用知识的艺术. R语言编程提供一套建立可视化和展现数据的内置函数和库,让你学习这门艺术.在 ...
- 第六篇:R语言数据可视化之数据分布图(直方图、密度曲线、箱线图、等高线、2D密度图)
数据分布图简介 中医上讲看病四诊法为:望闻问切.而数据分析师分析数据的过程也有点相似,我们需要望:看看数据长什么样:闻:仔细分析数据是否合理:问:针对前两步工作搜集到的问题与业务方交流:切:结合业务方 ...
- 第五篇:R语言数据可视化之散点图
散点图简介 散点图通常是用来表述两个连续变量之间的关系,图中的每个点表示目标数据集中的每个样本. 同时散点图中常常还会拟合一些直线,以用来表示某些模型. 绘制基本散点图 本例选用如下测试数据集: 绘制 ...
- 第四篇:R语言数据可视化之折线图、堆积图、堆积面积图
折线图简介 折线图通常用来对两个连续变量的依存关系进行可视化,其中横轴很多时候是时间轴. 但横轴也不一定是连续型变量,可以是有序的离散型变量. 绘制基本折线图 本例选用如下测试数据集: 绘制方法是首先 ...
- 第三篇:R语言数据可视化之条形图
条形图简介 数据可视化中,最常用的图非条形图莫属,它主要用来展示不同分类(横轴)下某个数值型变量(纵轴)的取值.其中有两点要重点注意: 1. 条形图横轴上的数据是离散而非连续的.比如想展示两商品的价格 ...
随机推荐
- web.config文件中配置数据库连接的两种方式
web.config文件中配置数据库连接的两种方式 标签: 数据库webconfig 2015-04-28 18:18 31590人阅读 评论(1)收藏举报 分类: 数据库(74) 在网站开发 ...
- R语言的神奇之基于向量
对于大多数需要来说,当我们需要计算两个向量相加时,我们需要分别对这两个向量的元素进行遍历,所以写起来非常的麻烦.下面看看R语言是如何实现的. 首先,将1:5赋予一个名为x的向量 > X<- ...
- datatables里面的search怎么去掉?
今天使用datatables插件的时候,由于需求是把自带的search去掉,并且给输入框加上placeholder="Search",使其看起来更简洁美观,于是乎简单粗暴的把代码改 ...
- Android+TensorFlow+CNN+MNIST 手写数字识别实现
Android+TensorFlow+CNN+MNIST 手写数字识别实现 SkySeraph 2018 Email:skyseraph00#163.com 更多精彩请直接访问SkySeraph个人站 ...
- BZOJ 1226: [SDOI2009]学校食堂Dining [DP 状压]
题意: $n$个人排队打饭,第$i$个人口味$a_i$,能容忍最多身后第$b_i$个人先打饭. 先后两人$i,j$做饭时间为$a_i & a_j - a_i | a_j$ 求最少时间 一开始想 ...
- sublime插件AndyJS2安装教程
1.下载AndyJS2包,已整理上传,下载AndyJS2.rar,附上网址.(https://github.com/jiaoxueyan/AndyJS2) 2.点击首选项(preference)=&g ...
- typedef struct 的用法
typedef struct stu { int age; char name[20]; }stu,*pstu; stu stu1;相当于struct stu stu1; pstu pstu1;相当于 ...
- CSS小技巧使用
1.清除浮动 浮动给我们的代码带来的麻烦,想必不需要多说,我们会用很多方式来避免这种麻烦,其中我觉得最方便也是兼容性最好的一种是....// 清除浮动 .clearfix{ zoom: 1; } .c ...
- Windows下Nginx的配置及配置文件部分介绍
一.在官网下载 nginx的Windows版本,官网下载:http://nginx.org/download/ 选择你自己想要的版本下载,解压 nginx(例如nginx-1.6.3) 包到你的win ...
- LeetCode - 601. Human Traffic of Stadium
X city built a new stadium, each day many people visit it and the stats are saved as these columns: ...