这节的内容是创建在以前咱们对R语言最基本向量赋值的基础之上的,笔者本人学完R当中向量的索引感受异常温馨,由于这个比Python的索引爽多了,是什么值开始索引就从哪里开始索引,到哪里结束就在哪里结束,而不会像Python同样有的时候输入0其实是从1开始计数,有的时候到99为止实际上你要索引到100,给人一种难以弄清的感受。学了简洁的R内心大为开朗。app
首先咱们先生成一个从1到100数值的向量:函数
> x <- c(1:100) > x [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 [59] 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 [88] 88 89 90 91 92 93 94 95 96 97 98 99 100 > length(x) [1] 100
能够看到这个向量的长度正好是100很少也很多,不是99也不是1011,极度温馨。而后利用索引提取其中的第8个数,咱们来看看是否是8:spa
> x[8]
[1] 8
x[-19] [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 20 21 22 23 24 25 26 27 28 29 30 [30] 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 [59] 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 [88] 89 90 91 92 93 94 95 96 97 98 99 100
这里用负号表示除开了19,获得其余剩余的值并表示出来。code
> x[c(4:78)] [1] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 [40] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 > x[c(1,45,67,68)] [1] 1 45 67 68
> y <- c(1,2,3,4,5,6) > y [1] 1 2 3 4 5 6 > y[c(T)] [1] 1 2 3 4 5 6 > y[c(T,F)] [1] 1 3 5
从中咱们能够看到的是首先引入一个Y向量,第一次所有数字主动命令判断为真,则数字所有输出。第二次不断循环先真后假,所以仅输出1,3,5。固然还比较经常使用的则是直接将数值进行判断,甚至能够加上逻辑词,以下所示:component
y[y>2] [1] 3 4 5 6 y[y>2 & y<100] [1] 3 4 5 6
在R当中,使用的是一个“&负号,而不是两个,这个也是一个看起来极度温馨的点。blog
首先先构造向量x:教程
> x <- c("one","two","three") > x [1] "one" "two" "three"
而后使用函数进行判断:索引
> "one" %in% x [1] TRUE
结果是T,说明“one”这个元素是在这个咱们所构造的元素当中的。three
最简单的是在向量的最后面添加,方法以下:class
> a <-c(1:100) > a [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 [59] 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 [88] 88 89 90 91 92 93 94 95 96 97 98 99 100 > a[101]=101 > a [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 [59] 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 [88] 88 89 90 91 92 93 94 95 96 97 98 99 100 101
直接在101的索引处添加数字便可也。
而后是在某个数值以后添加数值的方法,好比咱们要在3以后添加一个数值99,固然咱们先建立一个新的向量V,代码以下所示:
> v <- c(1:9) > v[20] <- 20 > v [1] 1 2 3 4 5 6 7 8 9 NA NA NA NA NA NA NA NA NA NA 20 > append(x=v,values = 99,after=3) [1] 1 2 3 99 4 5 6 7 8 9 NA NA NA NA NA NA NA NA NA NA 20
今天的教程就到此结束了!但愿你们看到以后可以有所收获!