4
として、たとえば、インデックスを1から10まで提供し、別の時間にインデックスを5から10まで呼び出すことができ、それらは5から10までの値で同じである必要があります。グローバルシードを設定すると、これは実行されませんベクトル内の位置によってランダム呼び出しのn番目の項目についてのみ同じに保たれます。
私がこれまで持っていることは、必要に応じて働く、これを次のとおりです。
f = function(ix,min=0,max=1,seed=1){
sapply(ix,function(x){
set.seed(seed + x)
runif(1,min,max)
})
}
identical(f(1:10)[5:10],f(5:10)) #TRUE
identical(f(1:5),f(5:1)) #FALSE
identical(f(1:5),rev(f(5:1))) #TRUE
各インデックスに対して明示的にシードを設定せずに、上記を達成するためのより効率的な方法があれば、私のように、思っていましたグローバルシードに相殺される。
例を教えてください。 –
何の例ですか?一般的な暗号化ですか? DES? AES?一般的な[Feistel暗号](https://en.wikipedia.org/wiki/Feistel_cipher)? [Hasty Pudding cipher](https://en.wikipedia.org/wiki/Hasty_Pudding_cipher)? – rossum
これを使用して実際の質問に対処する方法の例。 –