すべての名前のリストを含む文字タイプのベクトルがあります。
だから私はそれぞれの名前をループし、いくつかのアクションを実行しています。このループは、インデックス/長さに基づいていません(このように保ちたいです)。
ただし、ループ内のインデックス値にアクセスする場合は、どうすれば取得できますか。
例:
names <- c("name1", "name2")
for(name in names){
#do something
print(name)
#here how would I get the index number? like 1, 2 etc?
}
このようなことを行うことができます。これは文字通りi値を取得しています。
names <- c("name1", "name2")
i<-0
for(name in names){
i<-i+1
print(i)
}
または、数値インデックスを使用するようにループを変更します
names <- c("name1", "name2")
for(i in 1:length(names)){
print(i)
}
または、which
関数を使用します。
names <- c("name1", "name2")
for(name in names){
print(which(name == names))
}
さまざまな場合:
names <- c("name1", "name2")
for(i in seq_along(names)){
print(i)
}
seq_along
は高速なプリミティブで、IMOはわずかに甘い構文糖衣です。