How to form a binary matrix from a given two vectors?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Asaf McRock
le 29 Nov 2020
Commenté : Ameer Hamza
le 29 Nov 2020
Hi everyone,
Say I have two vectors with two different sizes:
Vector A has ten positive integers ( 1:10) and vector B has 100 positive integers (1:100). I am planning to create a matrix where its size is 10 by 100.
The row picture of matrix C:
the first raw has ones values in the 1-10 columns and zeros elsewhere.
the second raw has ones values in the 11-20 columns and zeros elsewhere.
the third raw has ones values in the third 21-30 columns and zeros elsewhere.
and so on for the other raws in the same pattern.
Your ideas and help would be greatly appreciated!
0 commentaires
Réponse acceptée
Ameer Hamza
le 29 Nov 2020
Modifié(e) : Ameer Hamza
le 29 Nov 2020
I am not sure how the elements of B are used in C. Consider following code
A = 1:10;
n = 10;
C = arrayfun(@(x) {repmat(x, 1, n)}, A);
C = blkdiag(C{:})
or
C = mat2cell(repelem(A, 1, n), 1, n*ones(size(A)));
C = blkdiag(C{:})
5 commentaires
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!