Effacer les filtres
Effacer les filtres

How to make combinations of given condition?

2 vues (au cours des 30 derniers jours)
C Zeng
C Zeng le 28 Déc 2012
Hi, all,
For example, if I want to make all combination of 5-dim vectors have only 2 two's, other entries are all 0. Is there a command in Matlab can do it? That is 22000 20200 20020 20002 02200 02020 02002 00220 00202 00022
Thanks.

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 28 Déc 2012
Modifié(e) : Andrei Bobrov le 28 Déc 2012
k = dec2bin(0:sum(pow2(0:4)))-'0';
out = 2*k(sum(k,2) == 2,:);
  1 commentaire
C Zeng
C Zeng le 28 Déc 2012
Andrei, thanks, can you explain?
Actually I want all other entries to be 1. Is there a way to do it easily?
I tried your code, it works here though not understood here. :-(

Connectez-vous pour commenter.

Plus de réponses (1)

Roger Stafford
Roger Stafford le 28 Déc 2012
This is a problem for matlab's 'nchoosek' function.

Community Treasure Hunt

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

Start Hunting!

Translated by