入门书籍: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:这里表示第一个变量不取……

最新文章

  1. 深入理解CSS过渡transition
  2. [DL学习笔记]从人工神经网络到卷积神经网络_1_神经网络和BP算法
  3. [译]学习IPython进行交互式计算和数据可视化(六)
  4. 蓝牙—RFCOMM协议
  5. 我的套路(windows):Jenkins+Jmeter+Ant持续集成
  6. Java集合框架:HashMap
  7. Android AsyncTask 初探
  8. jquery+NHibernate3.3.3+MVC的分页效果
  9. tyvj P1517 飘飘乎居士的乌龟(最大流)
  10. 【USACO 3.2.1】阶乘
  11. Android学习总结——判断网络状态
  12. net开源cms系统
  13. HDU 5650 so easy
  14. 网络端口地址转换的NAPT配置
  15. 到底什么是 &quot;method group&quot;
  16. SpringBoot加Poi仿照EasyPoi实现Excel导出
  17. SqlServer数据库重命名报错误:5030
  18. phpt5支付宝登陆支付接口解析
  19. Node.js中文乱码解决方法
  20. Linux MYSQL:dead but pid file exists

热门文章

  1. 添加文件到HDFS的集中缓存
  2. 实验楼 linux 学习
  3. JAVA中内部类和同文件非内部类的总结
  4. POJ1740A New Stone Game[组合游戏]
  5. BZOJ1951[SDOI2010]古代猪文
  6. Path Sum II
  7. 使用gulp工具生成svgsprites
  8. 浅谈Struts2
  9. 备忘:aliyun maven mirror
  10. [CG编程] 基本光照模型的实现与拓展以及常见光照模型解析