![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
R︱数据操作与清洗
文章平均质量分 89
悟乙己
心如花木,皆向阳而生!
展开
-
R语言︱数据去重
笔者寄语:unique对于一个向量管用,对于matrix、data frame那些就不管用了。(谢益辉)查看重复的方式,有点像分类变量个数一样,unique() 或者 table() 都是很好的方式去检测。1、unique函数> rt 年 月 公司名 利率1 2000 1 A a2 2000 1 A a3 200原创 2016-04-19 10:09:44 · 49291 阅读 · 2 评论 -
R语言︱异常值检验、离群点分析、异常值处理
笔者寄语:本文是《R语言数据分析与挖掘实战》异常值处理一般分为以下几个步骤:异常值检测、异常值筛选、异常值处理。其中异常值检测的方法主要有:箱型图、简单统计量(比如观察极值)异常值处理方法主要有:删除法、插补法、替换法。提到异常值不得不说一个词:鲁棒性。就是不受异常值影响,一般是鲁棒性高的数据,比较优质。一、异常值检验异常值大概包括缺失值、离群值、重复值原创 2016-04-21 20:25:28 · 120954 阅读 · 7 评论 -
R语言︱数据分组统计函数族——apply族用法与心得
1、apply函数对一个数组按行或者按列进行计算,矩阵纵、横运算(sum,average等)> ma <- matrix(c(1:4, 1, 6:8), nrow = 2)> ma [,1] [,2] [,3] [,4][1,] 1 3 1 7[2,] 2 4 6 8> apply(ma, c(1,2), sum)原创 2016-04-07 15:55:40 · 43659 阅读 · 1 评论 -
R语言数据集合并、数据增减、不等长合并
一、数据合并1、merge()函数最常用merge()函数,但是这个函数使用时候这两种情况需要注意:1、merge(a,b),纯粹地把两个数据集合在一起,没有沟通a、b数据集的by,这样出现的数据很多,相当于a*b条数据;2、merge函数是匹配到a,b数据集的并,都有的才匹配出来,如果a、b数据集ID不同,这个函数不够用。#横向合并ID<-c(1,2,3,4)name<-原创 2016-02-16 21:51:40 · 197274 阅读 · 7 评论 -
规模数据导入高效方式︱将数据快速读入R—readr和readxl包
本文由雪晴数据网负责翻译整理,原文请参考New packages for reading data into R — fast作者David Smith。转载请注明原文链接http://www.xueqing.tv/cms/article/102 昨天在新电脑使用xlsx包的时候,因为加载rJava十分不悦…于是用了readxl,不要太方便,于是转一篇过来备用着。以后读入都用你了~转载 2017-01-06 10:17:41 · 5197 阅读 · 0 评论 -
随笔︱MRO-Microsoft R Open使用心得与相应内容总结
往期回顾: 新工具︱微软Microsoft Visual Studio的R语言模块下载试用Ing...(尝鲜) Microsoft+R:Microsoft R Open (MRO)安装和多核运作吐槽版︱MRO-Microsoft R Open快捷键+界面识别+功能设置————————————————————————————————原创 2016-09-05 10:14:53 · 6991 阅读 · 1 评论 -
吐槽版︱MRO-Microsoft R Open快捷键+界面识别+功能设置
下载了之后,发现连运行(RUN键)在哪都不知道,蒙逼的在哪倒弄半天,都执行不了。。。问了别人,都说”ctrl+enter“,但是我的电脑执行不了,于是今天就狠狠的一个一个按钮的点一遍...(真是费劲...)于是有了以下的一些总结。中文界面的更改可以看: 新工具︱微软Microsoft Visual Studio的R语言模块下载试用Ing...(尝鲜)————————原创 2016-08-01 17:24:33 · 3227 阅读 · 2 评论 -
Microsoft+R:Microsoft R Open (MRO)安装和多核运作
本文转载于公众号大猫的R语言课堂,公众号作者使用这个MRO+Visual Studio 2015来运行。文中介绍了下载方法以及设置多线程。传统的RGui是单线程运行,此时microsoft收购之后实现了多线程,在高效上跨出了一大步。同时,笔者在使用的时候有一个非常大的困惑:里面的函数包是不是跟原来的一样?——从包的数量上来看,应该是一致的。但是不再是原来转载 2016-08-01 15:13:56 · 13583 阅读 · 0 评论 -
新工具︱微软Microsoft Visual Studio的R语言模块下载试用Ing...(尝鲜)
笔者:前几天看到了以下的图片,着实一惊。作为R语言入门小菜鸟,还是觉得很好看,于是花了一点时间下载下来试用了一下,觉得还是挺高大上的。就是英文不好是硬伤。下面贴给小白,我当时的下载步骤与遇见的问题。大神请绕道。欢迎会用的人,能够指导一下俺,俺的确不太熟悉这个界面与应用方式。下载流程:1、打开:https://www.visualstudio.co原创 2016-03-16 20:07:48 · 7287 阅读 · 3 评论 -
R语言与格式、日期格式、格式转化
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~R语言的基础包中提供了两种类型的时间数据,一类是Date日期数据,它不包括时间和时区信息,另一类是POSIXct/POSIXlt类型数据,其中包括了日期、时间和时区信息。基本总结如下:日期data,存储的是天;时间POSIXct 存储的是秒,POSIXlt 打散,年月日不同;日期-时间=不可运算。一般来...原创 2016-02-16 22:12:33 · 144912 阅读 · 2 评论 -
R语言︱排序问题
四、数据排序1、sort(),rank(),order()函数Sort排序(默认升序,decreasing=T时为降序)Order排序(默认升序,decreasing=T时为降序)在R中,和排序相关的函数主要有三个:sort(),rank(),or原创 2016-04-18 16:25:09 · 82724 阅读 · 0 评论 -
R语言︱文件读入、读出一些方法罗列(批量xlsx文件、数据库、文本txt、文件夹)
笔者寄语:批量读取目前看到有以下几种方法:xlsx包、RODBC包、批量转化成csv后读入。xlsx包首先尝试用R包解决。即xlsx包。xlsx包在加载时容易遇到问题。基本都是由于java环境未配置好,或者环境变量引用失败。因此要首先配置java环境,加载rJava包。百度了一下,网上已有很多解决方案。我主要是参考这个帖子,操作步骤为:1、 安装最新版本原创 2016-04-08 23:44:09 · 70595 阅读 · 8 评论 -
R语言︱函数使用技巧(循环、if族/for、switch、repeat、ifelse、stopifnot)
1、循环##循环foririsallzl=unique(iris$setosa)for (i in 1:2){ pp=iris[iris$setosa==allzl[i],] plot(pp$Sepal.Length~pp$Sepal.Width)}2、switch分支语句##switch分支语句switch(1,mean(1:10),rnorm(4)) #执行原创 2016-04-19 17:09:39 · 84762 阅读 · 3 评论 -
R语言︱文本(字符串)处理与正则表达式
处理文本是每一种计算机语言都应该具备的功能,但不是每一种语言都侧重于处理文本。R语言是统计的语言,处理文本不是它的强项,perl语言这方面的功能比R不知要强多少倍。幸运的是R语言的可扩展能力很强,DNA/RNA/AA等生物序列现在已经可以使用R来处理。R语言处理文本的能力虽然不强,但适当用用还是可以大幅提高工作效率的,而且有些文本操作还不得不用。高效处理文本少不了正则表达式转载 2016-04-11 15:22:41 · 70002 阅读 · 4 评论 -
R语言︱缺失值处理之多重插补——mice包
笔者寄语:缺失值是数据清洗过程中非常重要的问题(其他方法可见:R语言︱异常值检验、离群点分析、异常值处理),笔者在进行mice包的多重插补过程中遇到相当多的问题。大致的步骤简介如下:缺失数据集——MCMC估计插补成几个数据集——每个数据集进行插补建模(glm、lm模型)——将这些模型整合到一起(pool)——评价插补模型优劣(模型系数的t统计量)——输出完整数据集(co原创 2016-04-27 23:26:48 · 85537 阅读 · 47 评论 -
R + python︱数据规范化、归一化、Z-Score
笔者寄语:规范化主要是因为数据受着单位的影响较大,需要进行量纲化。大致有:最小-最大规范化、均值标准化、小数定标规范化1、最小-最大规范化也叫离差标准化,是对原始数据的线性变换,将数据映射到[0,1]之间,与功效系数法相同。#最小-最大规范化b1=(data[,1]-min(data[,1]))/(max(data[,1])-min(data[,1]))b2原创 2016-04-23 21:35:32 · 41060 阅读 · 1 评论 -
R语言︱逻辑运算
R软件包含两个逻辑值,TRUE和FALSE。在其他编程语言中也称为布尔值(Boolean values)。布尔向量就是充满着逻辑值的逻辑向量。那么有如何的应用呢? 1、比较运算可以产生逻辑值 >、<、>=、<=、==、!= b=c(2,3,3,3,5,8,9,3,4,1)a=c(3,4,9)a==b#面对长度不相等的恒等比较,相当于...原创 2016-04-28 21:39:10 · 42169 阅读 · 0 评论 -
R语言︱集合运算——小而美法则
集合运算的一般规则如下: union(x,y) #求并集 intersect(x,y) #求交集 setdiff(x,y) #求属于x而不属于y的所有元素 setequal(x,y) #判断x与y是否相等 a %in% y #判断a是否为y中的元素 choose(n, k) #n个里面取k个的组合数原创 2016-04-28 21:08:09 · 17975 阅读 · 0 评论 -
R语言︱噪声数据处理、数据分组——分箱法(离散化、等级化)
分箱法在实际案例操作过程中较为常见,能够将一些数据离散化,等级化,比如年龄段,我们并不想知道确切的几岁,于是乎可以将其分组、分段。基础函数中cut能够进行简单分组,并且可以用于等宽分箱法。cut函数:cut(x, n):将连续型变量x分割为有着n个水平的因子[plain] view plain copy print?cut(x,原创 2016-11-25 17:06:55 · 41647 阅读 · 0 评论 -
R语言︱用excel VBA把xlsx批量转化为csv格式
笔者寄语:批量读取目前看到有以下几种方法:xlsx包、RODBC包、批量转化成csv后读入。本章来自博客:http://www.cnblogs.com/weibaar/p/4506144.html在上面的尝试已经发现,xlsx本身就是这个复杂问题的最根本原因。与之相反,R对csv等文本格式支持的很好,而且有fread这个神器,要处理一定量级的数据,还是得把xlsx转化为csv格转载 2016-04-08 23:56:55 · 12006 阅读 · 0 评论 -
R语言︱非结构化数据处理神器——rlist包
本文作者:任坤,厦门大学王亚南经济研究院金融硕士生,研究兴趣为计算统计和金融量化交易,pipeR,learnR,rlist等项目的作者。近年来,非关系型数据逐渐获得了更广泛的关注和使用。下面分别列举了一个典型的关系型数据表和一个典型的非关系型数据集。关系型数据:一组学生的基本数据,包括姓名(Name)、性别(Gender)、年龄(Age)以及专业(Major)。转载 2016-04-11 17:02:50 · 9708 阅读 · 0 评论 -
R语言︱构造新序列
1、数值构造函数rep与seq#数值构造rep与seqrep(1:4,each=2)#依次重复1:4两遍rep(1:4,2) #注意,重复1:4两遍seq(from=3,to=5,by=0.2)rep(seq(from=3,to=5,by=0.2),2) #混合使用2、字符构造pasteseq代表是ck与数值1 之间用啥记号,如:ck_1,ck*2collapse原创 2016-04-18 20:01:14 · 3248 阅读 · 0 评论 -
R语言︱基本函数、统计量、常用操作函数
1、一些简单的基本统计量#基本统计量sum/mean/sd/min #一些基本统计量which.min() #找出最小值的序号2、向量向量在循环语句中较为广泛#向量#向量在循环语句中较为广泛M=vector(length = 8);M #生成一个长为8的布尔向量M[1]="1";M #赋值之后就会定义为字符原创 2016-04-18 20:50:39 · 48769 阅读 · 1 评论 -
R语言︱R社区的简单解析(CRAN、CRAN Task View)
笔者寄语:菜鸟笔者一直觉得r CRAN离我们大家很远,在网上也很难找到这个社区的全解析教程,菜鸟我早上看到一篇文章提到了这个,于是抱着学渣学习的心态去看看这个社团的磅礴、威武。CRAN(The Comprehensive R Archive Network):全面R档案网站1、R社区——主界面:https://www.r-project.org/主要功能:提供下载、最新原创 2016-04-20 10:24:23 · 11657 阅读 · 0 评论 -
R学习笔记(4): 使用外部数据
来源于:R学习笔记(4): 使用外部数据 博客:心内求法鉴于内存的非持久性和容量限制,一个有效的数据处理工具必须能够使用外部数据:能够从外部获取大量的数据,也能够将处理结果保存。R中提供了一系列的函数进行外部数据处理,从外部数据的类型可以分为文件、数据库、网络等;其中文件操作还可以区分为导入/导出操作和流式操作。Table of Contents转载 2016-05-06 00:21:50 · 2681 阅读 · 0 评论 -
R语言︱画图
笔者寄语:不论画啥,你先plot准没错。1、plot函数##画图plot(x~y,xlab="",ylab="",main="",xlim=c(0,45),ylim=c(0,45),pch=18,col=2,cex=5)#xlab/ylab,xy标题#main,主标题#xlim,ylim,xy线段范围#pch,点的类型(圆形、棱形等)#col,线条的颜色#cex,点的原创 2016-04-19 11:18:22 · 6006 阅读 · 0 评论 -
手把手教你在Windows环境下升级R
在Windows环境下,我们可以使用installr包自动将R升级到最新版本。并且可以安装软件。下面主要演示如何在Windows环境下升级R,并将旧版本安装的R包复制到更新版本的R。1、加载installr包install.packages("installr")library(installr)2、在“installr”菜单中选择“update R”3、in转载 2016-05-20 15:15:13 · 7278 阅读 · 1 评论 -
R语言︱list用法、批量读取、写出数据时的用法
列表是一种特别的对象集合,它的元素也由序号(下标)区分,但是各元素的类型可 以是任意对象,不同元素不必是同一类型。元素本身允许是其它复杂数据类型,比如,列表 的一个元素也允许是列表。例如:> rec <- list(name="李明", age=30, scores=c(85, 76, 90))> rec$name[1] "李明" $age[1] 30 $scor...原创 2016-04-11 17:06:46 · 207662 阅读 · 16 评论 -
R语言︱数据集分组、筛选(plit – apply – combine模式、dplyr、data.table)
R语言︱数据集分组大型数据集通常是高度结构化的,结构使得我们可以按不同的方式分组,有时候我们需要关注单个组的数据片断,有时需要聚合不同组内的信息,并相互比较。一、日期分组1、关于时间的包都有很多很好的日期分组应用。2、cut()函数cut(x, n):将连续型变量x分割为有着n个水平的因子cut(x, breaks, labels = NULL, include.lowest = FALS...原创 2016-02-18 21:02:18 · 118854 阅读 · 2 评论 -
R语言︱缺失值处理
1、缺失值由0代替dat[is.na(dat)] 跟逻辑向量的使用很有关 y <- x[!is.na(x)] #表示将向量x中的非NA元素赋给y; (x+1)[(!is.na(x)) & x>0] -> z #表示创建一个对象z,其中的元素由向量x+1中与x中的非缺失值和正数对应的向量组成x[is.na(x)]原创 2016-04-08 23:37:40 · 15622 阅读 · 0 评论 -
R语言自动化报告格式——knitr
R语言自动化报告格式——knitr一、背景在R的世界里,凡是提到自动化报告,很多人就会想到Sweave,它已经诞生十几年了。它的主要设计思想来自于文学化编程(Literate Programming),这是Knuth大神提出来的一种编程范式,它与传统的结构化编程不同。knitr (发音为:nit-ter)是由纯文本 (就像你正在阅读的) 和R代码交织在一起的文档文件. 用作者的话来说就原创 2015-08-12 19:22:40 · 11159 阅读 · 1 评论 -
R语言︱分布函数与概率密度+随机数产生
1、常见概率分布##正态分布pnorm(1.96) #P(x<=1.96)时的分布概率pnorm(1.96,0,1) #上同pnorm(1.96,lower.tail = F) #P(x>1.96)注意与pnorm的区别qnorm(0.975) #已知分布概率求x值dnorm(0)原创 2016-04-19 17:29:41 · 26227 阅读 · 0 评论 -
R语言︱ 数据库SQL-R连接与SQL语句执行(RODBC、sqldf包)
数据库是极其重要的R语言数据导入源数据之地,读入包有sqldf、RODBC等。一、数据库读入——RODBC包RODBC包中能够基本应付数据库读入。一般数据数据库读入过程中主要有:连接数据库(odbcConnect)、读入某张表(sqlFetch)、读某表某指标(sqlQuery)、关闭连接(close)还有一些功能:把R数据读入数据库(sql原创 2016-06-07 10:22:35 · 35927 阅读 · 1 评论 -
R︱Rstudio 1.0版本尝鲜(R notebook、下载链接、sparkR、代码时间测试profile)
2016年11月1日,RStudio 1.0版本正式发布!这是自2011年2月RStudio发布以来的第10个主要版本,也是更新最大的一次。主要亮点如下:1.R Notebooks 的辅助工具2.对sparklyr包的集成支持(R与Spark连接)3.profvis包进行性能分析4.基于readr/readxl/haven,优化数据读取5.R Markdown的辅助工具(websites和book原创 2016-11-02 15:43:17 · 6308 阅读 · 0 评论 -
R︱高效数据操作——data.table包(实战心得、dplyr对比、key灵活用法、数据合并)
由于业务中接触的数据量很大,于是不得不转战开始寻求数据操作的效率。于是,data.table这个包就可以很好的满足对大数据量的数据操作的需求。data.table可是比dplyr以及Python中的pandas还好用的数据处理方式。data.table包的语法简洁,并且只需一行代码就可以完成很多事情。进一步地,data.table在某些情况下执行效率更高。(参考来源:R高效数据原创 2016-10-24 17:27:55 · 31090 阅读 · 7 评论 -
Rstudio Server + Docker + tensorflowR - 云端安装与使用R语言与GPU深度学习
笔者本来想在阿里云上部署nvidia - docker + Rstudio Server,然后使用R语言来进行深度学习。本篇是在该过程中产生的经验之谈。文章目录1 准备阶段2 Rstudio Server nvidia-docker 环境2.1 docker初始化的问题2.2 docker中文环境布置问题3 Rstudio Server的部署3.1 启动3.2 添加用户组4 R语言与tenso...原创 2018-09-28 15:49:36 · 3237 阅读 · 0 评论