How to make combinations of given condition?

1 vue (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.

Catégories

En savoir plus sur Logical 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