R入门<三>-R语言实战第4章基本数据管理摘要
入门书籍:R语言实战
进度:1-4章
摘要:
1)实用的包
forecast:用于做时间序列预测的,有auto.arima函数
RODBC:可以用来读取excel文件。但据说R对csv格式适应更加良好,相应的导入导出均较为方便(read.table, write等)
reshape:目前用到rename函数,可以方便的对数据变量重命名
fCalendar:在日期输入处提及,据说对日期运算有奇效,但无具体示例。同理如lubridate
sqldf:在数据选取处提及,可代替subset以及各种where,即sql语句
2)数据导入
data.frame(变量1,变量2,变量3)
attach/detach:一套使用,不必重复输入数据框,直接输入变量名即可定位/同理还有with
read.table(文件路径,header=TRUE,sep=","):这里sep为分隔符
3)数据处理
is.na:判断缺失值是否存在
transform: 在按需创建新变量,并保存到数据框时,可用。举例如
mydata<-transform(mydata,
sumx=x1+x2,
meanx=(x1+x2)/2)
逻辑运算符:见P68,内有!=,不等于,!x非x等等
变量分组赋值重编码:先把所有数值赋值为NA,然后逐个判断,并赋予新值
test<-within(数据,{
agecat<-NA
agecat[age>75]<-"Elder"
agecat[age>=55 & age <=76]<-"Middle")
}
within:如上例用于赋值,与with类似但允许修改数据框,另外有提及recode,recodevar等充电吗
fix(数据):直接弹出交互式编辑器,可编辑数据
rename:用于重命名,reshape包
is.na:用于判断缺失值是否存在,缺失值为TRUE,非缺失值为FALSE(不能用==比较,因为默认缺失值不可比较)
na.rm=TRUE:用于在sum/avg等计算中,如果有缺失值时,忽略缺失值。否则函数会报错
na.omit:用于删除包含缺失值的行,一般数据量小时不建议使用
as.Date:表示将要输入的数据是日期,默认为yyyy-mm-dd,但可通过format(具体见P73)修改,举例如:
mydata《-as.Date("2014-10-12")
myformat<-"%m/%d/%y"
date<-as.Date(日期型变量,myformat直接引用之前的变量)
Sys.Date():输入当天日期;
Date():输入当前时间‘
format(x,format=输入的日期):指定输入什么日期
difftime():计算时间间隔
today<-Sys.Date()
born<-as.Date("1999-11-11")
difftime(today,born,units="weeks"/"days"/"hours"/"months"...)
is/as.datetype:判断,生成某个数据类型,如numeric, vector, logical等
order:数据排序,结合attach使用
merge():用by=变量名,来指定合并对象。这里NA影响很大,具体看帮助里的实例,可用incomparables去掉不要的观测值
cbind:不管其他,直接横向连接
rbind:总想合并,必须拥有相同的变量,顺序可以不一样
然后有提及一堆子集选取,但最好的是
subset/sqldf:用于数据提取。见P79-80
另外:
1:50,表示从第一个变量取到第50个变量
1-50:这里表示第一个变量不取……
R入门<三>-R语言实战第4章基本数据管理摘要的更多相关文章
- [读书笔记] R语言实战 (四) 基本数据管理
1. 创建新的变量 mydata<-data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8)) #方法一 mydata$sumx<-mydata$x1+mydata$x ...
- R语言实战 第7章
# 01 描述性统计分析 --------------------------------------------------------------#针对总体的mycavs = mtcars[,c( ...
- R语言实战读书笔记(五)高级数据管理
5.2.1 数据函数 abs: sqrt: ceiling:求不小于x的最小整数 floor:求不大于x的最大整数 trunc:向0的方向截取x中的整数部分 round:将x舍入为指定位的小数 sig ...
- R语言实战读书笔记(四)基本数据管理
4.2 创建新变量 几个运算符: ^或**:求幂 x%%y:求余 x%/%y:整数除 4.3 变量的重编码 with(): within():可以修改数据框 4.4 变量重命名 包reshape中有个 ...
- R语言实战(四)—— 基本数据管理
一.基础操作 1.根据数据信息,创建数据框 > manager <- c(1,2,3,4,5) > date <- c("10/24/08","1 ...
- [读书笔记] R语言实战 (五) 高级数据管理
1. 数值函数 1) 数学函数 2) 统计函数 3. 数据标准化 scale() 函数对矩阵或者数据框的指定列进行均值为0,标准化为1的标准化 mydata <- data.frame(c1=c ...
- R语言实战(三)基本图形与基本统计分析
本文对应<R语言实战>第6章:基本图形:第7章:基本统计分析 =============================================================== ...
- R语言实战(一)——基础入门
从今天开始接触R语言,主要参考的书籍是<R语言实战>. 1.安装R语言程序 Windows:http://mirror.bjtu.edu.cn/cran/ Linux:apt-get in ...
- R语言实战(第二版)-part 1笔记
说明: 1.本笔记对<R语言实战>一书有选择性的进行记录,仅用于个人的查漏补缺 2.将完全掌握的以及无实战需求的知识点略去 3.代码直接在Rsudio中运行学习 R语言实战(第二版) pa ...
随机推荐
- 浅谈Oracle权限体系
对于数据库来讲,安全性的重要程度不言而喻,今天我们就来聊一聊Oracle的权限体系. 1.账户管理 在此之前,先解释下一个容易混淆的概念:模式.所谓模式,指的是用户账户所拥有的一组对象(比如表,索引, ...
- Leetcode: climbing stairs
July 28, 2015 Problem statement: You are climbing a stair case. It takes n steps to reach to the top ...
- Linux操作系统启动流程梳理
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下 ...
- Java并发编程:Lock
原文出处: 海子 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问.本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包 ...
- MVC FormCollection collection
1.通过name获取值 collection.GetValues() 返回一个数组,适用于多选等,如果是单值可以[0] 2.直接转化为实体 将Action动作中传递的FormCollection转变成 ...
- Mysql完全手册(笔记一,底层与内置函数)
1.MySQL由五个主子系统组成.协同工作,这五个主子系统是: (1)查询引擎 (2)存储管理器 (3)缓冲管理器 (4)事务管理器 (5)恢复管理器 查询引擎: 这个子系统包含三个相互关联的部件: ...
- IO(六)--- 编码和解码
编码: 把看得懂的字符变成看不懂码值这个过程我们称作为编码. 解码: 把码值查找对应的字符,我们把这个过程称作为解码. 注意: 以后编码与解码一般我们都使用统一的码表.否则非常容易出乱码. 常用码表: ...
- PyCharm3.0默认快捷键(翻译的)
PyCharm3.0默认快捷键(翻译的) PyCharm Default Keymap 1.编辑(Editing) Ctrl + Space 基本的代码完成(类.方法.属性)Ctrl + Alt ...
- ActiveX控件之ActiveXObject is not defined
ActiveX控件方便用户在网页中插入各种效果,但是并不是所有浏览器都支持该控件. ActiveX是微软独有的,只有基于IE内核的浏览器才能使用. 当出现如上错误,可以将通过该控件创建的对象定义为本地 ...
- JQuery中each()的使用方法说明
JQuery中each()的使用方法说明 对于jQuery对象,只是把each方法简单的进行了委托:把jQuery对象作为第一个参数传递给jQuery的each方法.换句话说:jQuery提供的eac ...