R 语言向量
向量
向量只是相同类型项的列表。
要将列表合并为一个向量,请使用 c()
函数并用逗号分隔这些项。
在下面的实例中,我们创建了一个名为 fruits 的向量变量,它组合了字符串:
实例
# Vector of characters/strings
fruits <- c("banana", "apple", "orange")
# Print fruits
fruits
在本例中,我们创建了一个组合数值的向量:
实例
# Vector of numerical values
numbers <- c(1, 2, 3)
# Print numbers
numbers
要创建序列中包含数值的向量,请使用 :
运算符:
实例
# Vector with numerical values in a sequence
numbers <- 1:10
# Print numbers
numbers
您也可以在序列中创建带小数的数值,但请注意,如果最后一个元素不属于该序列,则不使用该元素:
实例
# Vector with numerical decimals in a sequence
numbers1 <- 1.5:6.5
numbers1
# Vector with numerical decimals in a sequence where the last element is not used
numbers2 <- 1.5:6.3
numbers2
结果如下:
[1] 1.5 2.5 3.5 4.5 5.5 6.5
[1] 1.5 2.5 3.5 4.5 5.5
在下面的实例中,我们创建一个逻辑值向量:
实例
# Vector of logical values
log_values <- c(TRUE, FALSE, TRUE, FALSE)
log_values
向量长度
要了解向量有多少项,请使用 length()
函数:
实例
# Find the length of the fruits vector
fruits <- c("banana", "apple", "orange")
length(fruits)
向量排序
要按字母或数字顺序对向量中的项进行排序,请使用 sort()
函数:
实例
fruits <- c("banana", "apple", "orange", "mango", "lemon")
numbers <- c(13, 3, 5, 7, 20, 2)
sort(fruits) # Sort a string
sort(numbers) # Sort numbers
访问向量
您可以通过引用括号 []
内的索引号来访问向量项。第一项是索引 1,第二项谁索引 2,依此类推:
实例
fruits <- c("banana", "apple", "orange")
fruits[1]
还可以通过使用 c()
函数根据不同的索引位置来访问多个元素:
实例
fruits <- c("banana", "apple", "orange", "mango", "lemon")
# Access first and third item (banana and orange)
fruits[c(1, 3)]
您还可以使用负索引号访问除指定项目外的所有项目:
实例
fruits <- c("banana", "apple", "orange", "mango", "lemon")
# Access all items except for the first item
fruits[c(-1)]
修改项
要更改特定项的值,请根据索引号:
实例
fruits <- c("banana", "apple", "orange", "mango", "lemon")
# Change "banana" to "pear"
fruits[1] <- "pear"
# Print fruits
fruits
重复向量
要重复向量,请使用 rep()
函数:
实例
重复每个值:
repeat_each <- rep(c(1,2,3), each = 3)
repeat_each
实例
重复向量的顺序:
repeat_times <- rep(c(1,2,3), times = 3)
repeat_times
实例
独立重复每个值:
repeat_indepent <- rep(c(1,2,3), times = c(5,2,1))
repeat_indepent
生成序列向量
上面的一个例子向您展示了如何使用 :
操作符创建一个带有数字值的向量:
实例
# Vector with numerical values in a sequence
numbers <- 1:10
# Print numbers
numbers
要在序列中执行更大或更小的步骤,请使用 seq()
函数:
实例
numbers <- seq(from = 0, to = 100, by = 20)
numbers
注意:seq()
函数有三个参数:from
是序列开始的位置,to
是序列停止的位置,by
是序列的间隔。