MATLABでループを使用せずに特定のベクトル(私の場合はランダムベクトル)の行列を置き換えることは可能ですか?ループを使用せずにベクトルの行列行を置換する
は、与えられた:
A = [1 2 3;
4 5 6;
7 8 9;
10 11 12]
をIは、例えば、でv = rand(1,3)
をA([2 3],:)
を交換したいが、私は実際A
の(この場合2及び3における)各選択された行がランダムに生成されることを望みます。
この問題は、MATLABでループを使用せずに、与えられたすべての行列A
に対して一般化したいのです。出来ますか?
ありがとうございます。
ルイSemeano
あなたの答えは大変です!そして、私はもっと具体的ではなく、時間を無駄にしてしまったことをとても残念に思っていました。しかし、実際には、行列のいくつかの行をループを使わずに生成されたベクトルに変更する方法があるかどうかを知りたいと思っていました)。私は誤解のために本当に残念です。 –
@RuiSemeanoこの答えにループはありません。これはまさにそれがしていることです。事前定義された行(2と3)の最初のバージョンとランダムなN行の2番目のバージョン。あなたは何が欠けていますか? – EBH
問題は私が本当により具体的でなければならないということです。私は関数で組み立てられた "ランダムジェネレータ"を使いたくありません。私はマトリックスではなく、ただ一つのベクトルを出力する私の "ランダムジェネレータ"を使用したいと思います。だから私は、選択されたすべてのA列を、ループまたはrepmatを使用せずに、ランダムに生成されたベクトルに置き換える必要があります。しかし、とにかく、私のランダムジェネレータに単なるベクトルの代わりに行列を出力する機能を持たせる方が良い解決策だと思います。あなたの忍耐ありがとうございます –