R向量循环混淆

R向量循环混淆,r,for-loop,vector,R,For Loop,Vector,我正在学习R,并且我已经在我的代码中找到了一个问题,希望在向量上循环可以做什么。这就是我所困惑的——假设我有一个数值向量,其中有两个不连续的元素 x <- c(1, 3) 打印出来 [1] 1 [1] NA 但我希望它打印1和3,而不是1和NA 我知道我误解了什么,但我看不出是什么。如果有人能帮我澄清我的理解,我将不胜感激。如上面的评论所示,答案是使用以下内容: for (i in 1:length(x)){ } 您的代码执行以下操作: 第一次迭代:我设置为x(1)中的第一个值,使

我正在学习R,并且我已经在我的代码中找到了一个问题,希望在向量上循环可以做什么。这就是我所困惑的——假设我有一个数值向量,其中有两个不连续的元素

x <- c(1, 3)
打印出来

[1] 1
[1] NA
但我希望它打印1和3,而不是1和NA


我知道我误解了什么,但我看不出是什么。如果有人能帮我澄清我的理解,我将不胜感激。

如上面的评论所示,答案是使用以下内容:

for (i in 1:length(x)){

}
您的代码执行以下操作:

第一次迭代:我设置为x(1)中的第一个值,使用i查找x(1)中的第一个值。 第二次迭代:我设置为x(3)中的第二个值,使用i查找x中的第三个值(不存在,所以NA)

使用
表示(i in 1:length(x))
或使用
表示(i in x){print(i)}
现在,您正在混淆索引和迭代。
for (i in 1:length(x)){

}