33

値を 2 ずつインクリメントする for ループを作成しようとしています。同等のコードは c です。

for (i=0; i<=78; i=i+2)

Rで同じことを達成するにはどうすればよいですか?

4

2 に答える 2

60

詳細については、次を参照?seqしてください。

for(i in seq(from=1, to=78, by=2)){
#  stuff, such as
  print(i)
}

また

for(i in seq(1, 78, 2))

ps私のCの無知を許してください。そこで、私は自分自身を外に出しました。

ただし、これは R で必要なことを行う方法です (更新されたコードを参照してください)。

編集

C がどのように機能するかを少し学んだ後、質問に投稿された例は次のシーケンスを反復するように見えます: 0 2 4 6 8 ... 74 76 78.

それを R で正確に複製するには、上記0の at ではなく atから始め1ます。

seq(from=0, to=78, by=2)
 [1]  0  2  4  6  8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44
[24] 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78
于 2012-04-23T20:04:58.043 に答える