16--complete.cases( )
complete.case()可以判断对象中是否数据完全,然后返回TRUE, FALSE
这一函数在去除数据框中缺失值时很有用。
> d
kids ages
1 Jack 12
2 Jill NA
> complete.cases(d)
[1] TRUE FALSE
> d[complete.cases(d), ]
kids ages
1 Jack 12
17--get()
get()函数接受一个代表对象名字的字符串参数,然后返回该对象的内容。
> u <- c(2:4)
> v <- c(3:5)
> for(i in c('u' ,'v')) {
+ z <- get(i)
+ print(z[1])
+ }
[1] 2
[1] 3
18--if else
- if else中的括号不能省略
> r = 4
> if(r == 4){
+ x <- 1
+ }else{
+ x <- 2
+ }
> x
[1] 1
省略了会出错
> r = 4
> if(r == 4)
+ x <- 1
> else
Error: unexpected 'else' in "else"
> x <- 2
> x
[1] 2
19--数据框的创建
用字符串创建数据框,R会默认将向量转换为因子(factor),stringsAsFactors这一参数可以保留原格式。
> kids <- c('Jack', 'Jill')
> ages <- c(12,10)
> d <- data.frame(kids, ages)
> d
kids ages
1 Jack 12
2 Jill 10
> class(d)
[1] "data.frame"
> class(d[[1]])
[1] "factor"
> d <- data.frame(kids, ages, stringsAsFactors = FALSE)
> class(d[[1]])
[1] "character"
20--grep()
grep() 可以找出所需要元素的位置。
- 但是在数据框中返回的是元素所在的列
> d
kids ages
1 Jack 12
2 Jill 10
> grep(10,d)
[1] 2
> grep("Jill",d)
[1] 1