📅  最后修改于: 2023-12-03 15:39:51.083000             🧑  作者: Mango
在 R 中,我们可以使用索引来获取向量中的特定元素。但是,如果我们想要提取向量的每个第 N 个元素,该怎么办呢?在这里,我们将介绍如何使用R代码轻松提取向量中的每个第 N 个元素。
假设我们有以下向量:
vec <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
我们希望提取它的每个第 2 个元素。我们可以通过以下方式实现:
vec[seq(2, length(vec), 2)]
输出结果为:
[1] 2 4 6 8 10
我们使用 seq()
函数来创建一个序列包含从 2 开始,步长为 2,不超过向量长度的所有数字。 然后,我们通过将此序列用作索引来提取每个第 2 个元素。
另一种实现方式是使用 R 的循环语句,例如 for()
循环。例如:
results <- c()
for (i in seq(2, length(vec), 2)) {
results <- c(results, vec[i])
}
我们创建一个空向量 results
用于存储我们提取的每个第 2 个元素。我们使用 for()
循环遍历从 2 开始并步长为2的序列。 在每个迭代中,我们使用索引 i
从向量中提取一个元素,并将其添加到结果向量中。
输出结果为:
[1] 2 4 6 8 10
无论您使用哪种方法,提取向量的每个第 N 个元素都是非常容易的。根据您的使用情况和问题的复杂程度,您可以选择使用索引或循环来实现此操作。