How to create a m*n matrix with 0,1 entries?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
In this matrix All entries are zeros except for a single 1 in each row and at most a single 1 in each column?
2 commentaires
John D'Errico
le 14 Fév 2017
Trivial.
eye(m,n)
That fits your requirements.
Do you have some more information on what you really need?
Réponse acceptée
John D'Errico
le 14 Fév 2017
Modifié(e) : John D'Errico
le 14 Fév 2017
Did you say random until we had to prod you? :)
The requirements imply that m<=n.
A = eye(m,n);
A(randperm(m),randperm(n))
That yields a fixed number of ones. If you want the result to sometimes have less than m ones, then just start with a diagonal matrix with some of the diagonal elements as zero. Then you can define the number of non-zeros in advance. You can even choose the number of them randomly.
help diag
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!