用rand函数生成元素均为0-1之间的随机数的矩阵,然后逐个判断,0.5一下的改为0,0.5以上的改为1: A=rand(m,n); for i=1:m for j=1:n if A(i,j)<=0.5 A(i,j)=0; else A(i,j)=1; end end end 扩展资料: matlab矩阵基本的生成 1、单位矩阵 eye(n)生成n*n的单位矩阵 eye(n,m)生成n*...
用rand函数生成元素均为0-1之间的随机数的矩阵,然后逐个判断,0.5一下的改为0,0.5以上的改为1:A=rand(m,n);for i=1:m for j=1:n if A(i,j)<=0.5 A(i,j)=0;else A(i,j)=1;end end end
编写rand_BinaryMatrix函数,代码如下:function [ BinaryMatrix ] = rand_BinaryMatrix( i, j )随机生成i行j列的0和1元素填充的矩阵 BinaryMatrix = rand(i,j);for count_i = 1:i for count_j = 1:j if BinaryMatrix(count_i, count_j) < 0.5 BinaryMatrix(count_i, count_j) = 0...
首先,matlab默认下标起始是1,不是0,所以以后应该注意到。 对这个问题,做了一个例子,希望有所帮助。 clc; clear all; A = randint(1, 4, [0 1]); A(1, 1) = -3; A(1, 2) = -1; A(1, 3) = 3; A(1, 4) = 1; A 结果 A = -3 -1 3 1 >> ...
在matlab中怎么生成一个随机的0,1矩阵 例如:A=rand(8,5)>0.3;其中(8,5)是矩阵大小,0.3是矩阵中出现元素0的概率,也即出现元素1的概率为0.7,望采纳。
可以这样子,比如要生成m*n的矩阵,先用rand函数生成元素均为0-1之间的随机数的矩阵,然后逐个判断,0.5一下的改为0,0.5以上的改为1:A=rand(m,n);for i=1:m for j=1:n if A(i,j)<=0.5 A(i,j)=0; else A(i,j)=1; end endend stevenxcy | 发布于2010-10-21 举报| 评论(1) 3 2 ...
500个为0 a=zeros(10,10,10); %a是10x10x10全0矩阵 b=randperm(1000); %b是1~1000自然数随机排列的矩阵 a(b(1:500))=1; % 取b的前500个数作为下标,将a中对应500个单元赋值为1 最后得到的a就是一个10x10x10的矩阵,其中有500个0,和500个1,位置随机 ...
比如:A = rand(3) > .9就会生成个0约占90%的3*3矩阵。想变成稀疏矩阵的话:A = sparse(A)
原理如下:a服从【0,1】均匀分布,则(a+b)/n服从【b/n,(b+1)/n】均匀分布。a*n+b服从【b,b+n】均匀分布 因而,(rand()*2)+3服从【3,5】均匀分布。值得注意的是,我们首先考虑了均匀分布区间的长度,将【0,1】区间拉伸到相同长度,然后再使用平移即可。
调用函数rand(x,y)即可,x,y对应行数和列数。