2016-10-22 10 views
0

私は、1と0だけを含むサイズnのmatlabで行列を作成しています。これを行う最も簡単な方法は、サイズmxnの行列の丸め(rand(m、n))ですが、すべてのゼロまたはすべて1を持つ行を作成する場合もあります。私は、各行にあるものの数に下限と上限を入れたいと思います。それを行う簡単な方法はありますか?ランダムなmatlabマトリックス。カラムあたり少なくとも.4、最大で.6個。

おかげ

答えて

3

は、これはほんの一列に対してですが、簡単に行列に拡張することができます。

v = zeros(m,1); % column 

は少なくとも40%とし、60%以下のもので、列の先頭を入力します。

v(1: floor((0.4+(0.6-0.4)*rand())*(m+1))) = 1; 

列をシャッフル:

v = v(randperm(numel(v))); 
を0
+0

私はそれを実行し、それは常に5つを作成します。 –

+0

しかし、提案に感謝します。 –

+0

@JosuéOrtegaどのくらいの大きさの「m」を使用しましたか? – flawr

関連する問題