2011-06-21 10 views
45

これは非常に基本的な質問ですが、私にとっては迷惑なので、私は尋ねています。繰り返し値のシーケンスR

私はこれを実装する方法が働く

nyear<-20 
    names<-c(rep(1,nyear),rep(2,nyear),rep(3,nyear),rep(4,nyear), 
      rep(5,nyear),rep(6,nyear),rep(7,nyear),rep(8,nyear)) 

たなど3 ... 2 3 3 ... 1 2 2 ...つまり1 1、繰り返し数の列が必要ですが、不器用で、明らかにうまく拡張できません。 N個の整数をそれぞれM回連続して繰り返すにはどうしたらいいですか?私はseq()とrep()をネストしようとしましたが、それは私が望んだことを全くしませんでした。私は明らかにそれを行うforループを書くことができますが、これも不器用に思えます - これを行うための本来の方法が必要です!

答えて

94

あなたはrep()each=引数を逃した:

R> n <- 3 
R> rep(1:5, each=n) 
[1] 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 
R> 

をので、あなたの例では、単純な

R> rep(1:8, each=20) 
で行うことができます
関連する問題