Create a Matrix - Replace elements of a Matrix

1 vue (au cours des 30 derniers jours)
Konstantinos
Konstantinos le 13 Déc 2014
Commenté : Konstantinos le 13 Déc 2014
I want to create a row of a matrix which consist of 16 zeros and random replace 4 of the first 8 elements with ones and 2 of the last 8 elements with ones.
i.e A = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;]
Then B= [ 1 0 0 1 1 0 0 1 0 0 1 0 0 1 0 0 ; ]
The ones should be replaced randomly in their positions as explained before.
Any help could be useful.
Thanks in advance !

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 13 Déc 2014
A = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
B=A
B([randperm(8,4) randperm(8,2)+8])=1
  3 commentaires
Azzi Abdelmalek
Azzi Abdelmalek le 13 Déc 2014
You can write
A=zeros(1,16)
instead of
A = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
Konstantinos
Konstantinos le 13 Déc 2014
Indeed...my problem was that I didn't know the existance of "randperm" command.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Random Number Generation 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!

Translated by