Effacer les filtres
Effacer les filtres

Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Create a vector for each element in another vector to constitute a matrix

1 vue (au cours des 30 derniers jours)
ABDULAZIZ ALTUN
ABDULAZIZ ALTUN le 30 Juin 2020
Clôturé : MATLAB Answer Bot le 20 Août 2021
Consider the following vector
v=[1:5]'
I want to create for each element of v another v, such that we have the following matrix
[1 1; 1 2; 1 3; 1 4; 1 5; 2 1; 2 2; ect]
Is there a shortcut or a code trick?
I tried this and it works but I wonder if there is a better way of doing it
v=[1:5]';
v1=repmat(v,length(v),1);
v2=repmat(v',length(v),1);
M=[v1(:) v2(:)];
M is what I want.
  3 commentaires
ABDULAZIZ ALTUN
ABDULAZIZ ALTUN le 30 Juin 2020
@KSSV just fixed it.
KSSV
KSSV le 30 Juin 2020
Thats what you can do...use repmat/ repelem.

Réponses (1)

madhan ravi
madhan ravi le 30 Juin 2020
Modifié(e) : madhan ravi le 30 Juin 2020
[repelem(v, numel(v)), repmat(v, numel(v), 1)]
%or
[V1, V2] = meshgrid(v,v)
[V1(:), V2(:)]

Cette question est clôturée.

Community Treasure Hunt

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

Start Hunting!

Translated by