如何用matlab生成一个10*10的稀疏随机矩阵,每行里至少含有1个0,且每行之和为1

来自:    更新日期:早些时候
Matlab中怎么生成10行10列矩阵,每行每列都是3个1,其余为0~

1和0的位置有没有特别要求?没有的话可以这样写:
a=zeros(10,10);
a(1:3,:)=1

创建一个随机矩阵:它的每行每列都只有一个位置为1,其余为0
a=eye(5)
b=randperm(5)
c=a(:,b)
这样c就满足要求。

创建一个矩阵只要求每列上只有一个位置为1
a=zeros(5);
for i=1:length(a)
b=randperm(5);
a(b(1),i)=1;
end

你可以这么做,对于每一行,都先生成一个1到10的随机数,假如生成2,那就把这一行的第二个数置为0,然后对于没有置为0的其他行再分别生成随机数,待其他九个随机数也生成之后对这九个作一个归一化就能保证每行之和为1了


如何用matlab生成一个10*10的稀疏随机矩阵,每行里至少含有1个0,且每行之和为1视频

相关评论:
  • 15970386176matlab如何生成一个0,1数组(数组中只有0或者1),但是生成的1的个数为...
    宦林旭N个元素的数组里包含x个1N = 100;x = 5;a = zeros(N,1);ind = randi(N, [x,1]);% 给出x个随机值作为索引a(ind) = 1;find(a==1)% 验证是否5个1%% MxN的矩阵中包含x个1M = 100;N = 200;x = 5;a = zeros(M,N);ind = randi(M*N, [x,1]);% 给出x个随机值作为...

  • 15970386176matlab怎中怎么新建一个全为1的cell呢?比如说1*3的cell里面元素全为1...
    宦林旭A = num2cell(ones(1, 3))

  • 15970386176求助用matlab 函数square产生一个振幅为1,周期为2,占空比为50%的方波...
    宦林旭周期=2 -> 频率w=2*pi\/2 如下即可:x = square(w*t, 50);plot(t, x);别说不知道t是什么。

  • 15970386176请问怎么用MATLAB的randsrc 函数随机产生一个1行8列的01矩阵g, 其中...
    宦林旭基本思路是这样的,取出g中的每个元素,会取吧?这个在matlab中是基础。将每个元素与1作比较,用for循环比较法,比较次数,你的m,n已经给出了。count自加1.最后比完,得到count的值,与你所赋予的m,n总和,也就是元素个数,除法。得到概率。这个是这个矩阵中1出现的概率,同时也是每个元素为1的...

  • 15970386176在matlab中怎么生成一个随机的0,1矩阵
    宦林旭例如:A=rand(8,5)>0.3;其中(8,5)是矩阵大小,0.3是矩阵中出现元素0的概率,也即出现元素1的概率为0.7,望采纳。

  • 15970386176用MATLAB使一个矩阵第一行数字随机变为1,0
    宦林旭A为目标矩阵,命令如下 A(1,:)=(rands(1,size(A,2))>0.5)=== 演示如下

  • 15970386176如何用matlab随机生成一个由0,1构成的稀疏矩阵。求各位大神赐教啊...
    宦林旭比如:A = rand(3) > .9就会生成个0约占90%的3*3矩阵。想变成稀疏矩阵的话:A = sparse(A)

  • 15970386176请问:怎样用matlab随机生成一个只有0,1元素的矩阵?用什么命令,谢谢啊...
    宦林旭用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

  • 15970386176把点坐标输入matlab后用plot生成曲线横纵坐标刻度都是5怎么改成1?
    宦林旭加入axis命令 axis([1 inf 1 inf])这句表示横纵坐标都从1开始

  • 15970386176请问:怎样用matlab随机生成一个只有0,1元素的矩阵?用什么命令,谢谢啊...
    宦林旭编写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...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网