R 语言向量
向量
向量只是相同类型项的列表。
要将列表合并为一个向量,请使用 c() 函数并用逗号分隔这些项。
在下面的实例中,我们创建了一个名为 fruits 的向量变量,它组合了字符串:
实例
# Vector of characters/stringsfruits <- c("banana", "apple", "orange")# Print fruitsfruits
在本例中,我们创建了一个组合数值的向量:
实例
# Vector of numerical valuesnumbers <- c(1, 2, 3)# Print numbersnumbers
要创建序列中包含数值的向量,请使用 : 运算符:
实例
# Vector with numerical values in a sequencenumbers <- 1:10# Print numbersnumbers
您也可以在序列中创建带小数的数值,但请注意,如果最后一个元素不属于该序列,则不使用该元素:
实例
# Vector with numerical decimals in a sequencenumbers1 <- 1.5:6.5numbers1# Vector with numerical decimals in a sequence where the last element is not usednumbers2 <- 1.5:6.3numbers2
结果如下:
[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 valueslog_values <- c(TRUE, FALSE, TRUE, FALSE)log_values
向量长度
要了解向量有多少项,请使用 length() 函数:
实例
# Find the length of the fruits vectorfruits <- 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 stringsort(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 itemfruits[c(-1)]
修改项
要更改特定项的值,请根据索引号:
实例
fruits <- c("banana", "apple", "orange", "mango", "lemon")# Change "banana" to "pear"fruits[1] <- "pear"# Print fruitsfruits
重复向量
要重复向量,请使用 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 sequencenumbers <- 1:10# Print numbersnumbers
要在序列中执行更大或更小的步骤,请使用 seq() 函数:
实例
numbers <- seq(from = 0, to = 100, by = 20)numbers
注意:seq() 函数有三个参数:from 是序列开始的位置,to 是序列停止的位置,by 是序列的间隔。