首页 > 代码库 > R笔记 2

R笔记 2

视频笔记

 随手记,仅供个人查阅

1.  kaggle比赛
2.  发布结果的平台:GitHub,RPubs
3.  发布文件 README.md:introduction(dataset, variables...), loading the data, making plots
4.  Google,Stackoverflow 搜索R问题
5.  提问:操作系统,R版本,函数,错误,语句
 
6.  因子:改变因子levels顺序用factor里levels参数
              table函数查看因子各个数
              unclass()去掉因子属性,得到整型变量
7.  NaN属于NA,NA不属于NaN;   NaN有类型属性,可以有character NaN
8.  Sys.Date()获得当前年月日,类型是data;   julian()获得当前距1970.1.1的天数
9.  names(unclass(变量))
10.构造子集:subset(向量矩阵,条件)
 
11.[]获得列表元素包含名字和内容;   [[]]获得列表元素的内容
12.[[c(1,2)]]表示获取列表第一个元素里第二个元素
13.不完全匹配:$获取子集时,元素名可以不写完全 a <-    list(adsff=1:10) a$a可得到1:10
                      [[]]获取子集时,不完全匹配需要加上exact参数 a[["a", exact=FALSE]] 否则得到NULL
                      若是两个元素名中都有a,则会返回NULL
14.返回两个向量都不为缺失值的位置:complete.cases(x,y) xy都为向量 ()中或为数据框之类
 
15.apply(数组,维数,函数名)        x <- matrix(rnorm(100),10,10);apply(x,1,quantlile, probs=c(0.25,0.75))
16.x <- 1:4; lapply(x, runif, min=0, max=100)    产生一个列表包含四个元素,每个元素里有1,2,3,4个元素
17.x <- list(a=matrix(1:6,2,3), b=matrix(4:7,2,2));lapply(x, function(m) m[1, ] )    
         lapply与匿名函数的结合,提取列表x中每个矩阵元素第一行
18.sapply简化结果:结果列表元素长度均为1,返回向量;长度相同且大于1,返回矩阵;否则仍为列
19.mapply(函数名,数据,函数相关参数)      list(seq(1,4),seq(2,3),seq(3,2),seq(4,1)) 与 mapply(seq,1:4,4:1)结果一致
20.tapply(向量,因子,函数名) x <- c(rnorm(5), runif(5), rnorm(5,1));f <- gl(3,5)(产生因子) 
         tapply(x, f, mean) 参数simplify=FALSE拒绝简化
 
21.split 根据因子对向量数组等分组 x <- c(rnorm(5), runif(5), rnorm(5,1));f <- gl(3,5)    
         split(x,f) lapply(split(x,f), mean)
22.s <- split(airquality.airquality$Month) ; table(airquality$Month)
          lapply(s, function(x) colMeans(x[,c("Ozone", "Wind", "Temp")]))
          sapply(s, function(x) colMeans(x[,c("Ozone", "Wind", "Temp"), na.rm=TTRUE))

R笔记 2