A.正则序列
1. :
eg:
> n<-10 > n [1] 10 > 1:n-1 [1] 0 1 2 3 4 5 6 7 8 9 > 1:(n-1) [1] 1 2 3 4 5 6 7 8 9
2.seq(),从from 开始,到To结束,以by为间距/length算出其间距的一组数列
> seq(1,9,by=0.5) [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 > seq(1,9,by=0.6) [1] 1.0 1.6 2.2 2.8 3.4 4.0 4.6 5.2 5.8 6.4 7.0 7.6 8.2 8.
3.req(),生成重复数列
> x<-c(1,2);x [1] 1 2 > rep(x,times=5) [1] 1 2 1 2 1 2 1 2 1 2 > rep(x,each=5) [1] 1 1 1 1 1 2 2 2 2 2
B.逻辑向量
逻辑运算符:<; <=; >; >=; ==; !=
C.缺损值
> a<-c("a","b",NA);a [1] "a" "b" NA > a[1] [1] "a" > nchar(a[1]) [1] 1 > print(a,quote=F) [1] a b <NA>
D,字符向量
以双引号或但引号包围
\n 换行
\t 制表符
\b 退格键
字符的连接用c(),或是paste()
paste(1:12) [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" > paste("Today is:",date()) [1] "Today is: Wed Jun 13 14:53:36 2012" > paste("A",1:6,seq="") [1] "A 1 " "A 2 " "A 3 " "A 4 " "A 5 " "A 6 " > paste("A",1:6,seq="_") [1] "A 1 _" "A 2 _" "A 3 _" "A 4 _" "A 5 _" "A 6 _" > stopifnot(identical(paste ("A", 1:6, sep = ""), + paste0("A", 1:6))) > > paste(c("X","Y"),1:10,seq=""); [1] "X 1 " "Y 2 " "X 3 " "Y 4 " "X 5 " "Y 6 " "X 7 " "Y 8 " "X 9 " [10] "Y 10 " > paste(c("X","Y"),1:10); [1] "X 1" "Y 2" "X 3" "Y 4" "X 5" "Y 6" "X 7" "Y 8" "X 9" "Y 10" > paste(c("X","Y"), 1:10); [1] "X 1" "Y 2" "X 3" "Y 4" "X 5" "Y 6" "X 7" "Y 8" "X 9" "Y 10"
E.索引向量
1.若索引向量采用逻辑向量,则选出向量中逻辑返回值为TRUE的元素
> a[!is.na(a)] [1] "a" "b"
> x<-c(1:10,NA);x [1] 1 2 3 4 5 6 7 8 9 10 NA > (x+1)[(!is.na(x))&x>5]->z > z [1] 7 8 9 10 11将创建一个对象Z,并且将向量x+1的值赋给它,要求x中对应的元素>5,且非NA缺损值
2.正整数向量
> c("x","y","m")[rep(c(1,2),times=4)]->z;rep(c(1,2),times=4) [1] 1 2 1 2 1 2 1 2 > z [1] "x" "y" "x" "y" "x" "y" "x" "y"
3.负整数
移除某个元素
4.字符串向量
> fruit<-c(5,10,1,20) > names(fruit)<-c("orange","banana","apple","peach");fruit orange banana apple peach 5 10 1 20 > lunch<-fruit[c("apple","orange")];lunch apple orange 1 5
db为一个list数据
> names(db) [1] "类别" "时间" "大类别" "周别" "职务" > test<-db[c("类别","时间")];test 错误: 意外的输入在"test<-db[c("类别","时间")]?里 > test<-db[c("类别","时间")];test #将list db中colname为类别,时间的数据赋值给test
#等价于 test<-subset(db, select = c(类别, 时间))
类别 时间 1 晨会 7.92 2 周会 4.02 3 月会 0.00
> mode(x) [1] "numeric"
> x [1] 1 2 3 4 5 6 7 8 9 10 NA > as.character(x) [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" NA