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)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by