R学习-4.Vectors
Vectors
在第一节学习过vector可以进行加减乘除求绝对值开方等的算术运算,vector也是可以进行比较的。比较结果返回布尔值(TRUE, FALSE)
这些用来比较两个对象的运算符称为比较运算符,包括<
、>=
、>
、 <=
、 ==
。
> num_vect <- c(0.5, 55, -10, 6)
> tf <- num_vect < 1
> tf
[1] TRUE FALSE TRUE FALSE
> num_vect <= 6
[1] TRUE FALSE TRUE TRUE
之前创建的vector里元素都是数值,也可以创建character vector,其元素包含的是字符串。
> my_char <- c("My", "name", "is")
> my_char
[1] "My" "name" "is"
可以将character vector里的元素组合成一个character,使用函数paste()
可以完成改该功能。参数'collapse'可以用来设置元素之间的连接符。
> paste(my_char, collapse="")
[1] "Mynameis"
> paste(my_char, collapse=" ")
[1] "My name is"
> paste(my_char, collapse="-")
[1] "My-name-is"
> my_name <- c(my_char, "hwa")
> paste(my_name, collapse=" ")
[1] "My name is hwa"
paste()
的参数可以是多个vectors。参数'sep'可以设置不同向量元素的连接方式。而'collapse'设置的是向量内元素的连接方式。
> paste(1:3, c("X", "Y", "Z"), sep = "-")
[1] "1-X" "2-Y" "3-Z"
> paste(1:3, c("X", "Y", "Z"), sep = "-", collapse=" ")
[1] "1-X 2-Y 3-Z"
> paste(1:3, c("X", "Y", "Z"), sep = "", collapse=" ")
[1] "1X 2Y 3Z"
单个character也是会被看作长度为1的vector
> paste("Hello", "world!", sep = " ")
[1] "Hello world!"
不同长度的vector进行连接,vector元素将会重复循环匹配连接。LETTERS
是预先定义好的变量,包含26个英文字母。
> paste(LETTERS, 1:4, sep = "")
[1] "A1" "B2" "C3" "D4" "E1" "F2" "G3" "H4" "I1" "J2" "K3" "L4" "M1" "N2" "O3" "P4" "Q1"
[18] "R2" "S3" "T4" "U1" "V2" "W3" "X4" "Y1" "Z2"
> paste(LETTERS, 1:4, sep = "", collapse = " ")
[1] "A1 B2 C3 D4 E1 F2 G3 H4 I1 J2 K3 L4 M1 N2 O3 P4 Q1 R2 S3 T4 U1 V2 W3 X4 Y1 Z2"
不同向量的元素,谁在前,谁在后,就看输入参数vector的位置了。
> paste('a', 1:5, sep = '-')
[1] "a-1" "a-2" "a-3" "a-4" "a-5"
> paste(1:5, 'a', sep = '-')
[1] "1-a" "2-a" "3-a" "4-a" "5-a"