2013-02-28 14 views
12

ベクトルをN回繰り返すが、ベクトル全体ではなく要素ごとに繰り返す。例えばベクトル要素を反復的にN回繰り返す

、私が持っている:

v <- c('a', 'b') 

は、私はn回を繰り返したいと言う:

n <- 3 

私がしたい:日付へ

vfill <- c(rep(v[1], n), rep(v[2], n)) 
print(vfill) 
[1] "a" "a" "a" "b" "b" "b" 

が私の最善の解決策:

ffillv <- function(i) rep(v[i], n) 
c(sapply(seq_len(length(v)), ffillv)) 

私はなど

+4

なぜ '担当者を定義している

rep(v, each=n) 

(V rbind、plyrを使用して、例えば、高速で&スケーラブルなソリューションに興味を持っています、each = 3) '?あなたがしようとしていることを明確にすることはできますか? – A5C1D2H2I1M1N2O1R2T1

+0

@AnandaMahtoまさに私が探していたものです。私は最適化するために幾分複雑な目的関数を持っています。私は、plyr分割適用結合法の哲学を使用します。分析プロセスでは、いくつかの低レベルの中間データにアクセスし、それをdata.frameに結合したいと考えました。私はldplyを使いたいと思ったように、一つに結合する方法を学びましたが、その特定の方法で私が求めた拡張のタイプが必要でした。あなたのところで、私がやっているやり方は最適ではないかもしれません!近い将来、私はそれについてさらに質問をするかもしれません。ありがとう。 – Patrick

答えて