私はこのようなdata.frameを持っていますdf
:
df <- data.frame (x=1:5,y=1:5)
このデータフレームに対して行ごとに関数を使用したいと思います。ここで、とapply
の両方に依存する条件をチェックし、条件が満たされるまで要素と要素を変更します。この例では、合計が8になる場合と、合計しない場合は、それらの新しい乱数を選択し続けて、再試行します。x
y
x
y
x
y
ループをapply
使った関数が一番いいと思いました。while
だから私は次のことを試しました:
checkchange <- function(x) while(x[1] + x[2] < 8)
{
x[1] <- sample(5,1)
x[2] <- sample(5,1)
return(cbind(x[1],x[2]))
}
次に、これを行うことを計画します。
newdf <- apply(df,1,checkchange)
これは機能しません。を使用する必要がありますかrepeat
、または値をより明確break
に指定する必要がありますか。ループ文法は大歓迎です。return
while