Info

この質問は閉じられています。 編集または回答するには再度開いてください。

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

1 回表示 (過去 30 日間)
ABDULAZIZ ALTUN
ABDULAZIZ ALTUN 2020 年 6 月 30 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
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 件のコメント
ABDULAZIZ ALTUN
ABDULAZIZ ALTUN 2020 年 6 月 30 日
@KSSV just fixed it.
KSSV
KSSV 2020 年 6 月 30 日
Thats what you can do...use repmat/ repelem.

回答 (1 件)

madhan ravi
madhan ravi 2020 年 6 月 30 日
編集済み: madhan ravi 2020 年 6 月 30 日
[repelem(v, numel(v)), repmat(v, numel(v), 1)]
%or
[V1, V2] = meshgrid(v,v)
[V1(:), V2(:)]

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by