How can one create this matrix?

2 views (last 30 days)
alpedhuez
alpedhuez on 24 Jul 2020
Commented: alpedhuez on 24 Jul 2020
I want to create a matrix like
1 1
1 2
1 3
1 4
1 5
2 1
2 2
2 3
..
That is, I start from
grids=1:1:5
and I want to repeat this "grids" in the second column. Please advise.

Accepted Answer

madhan ravi
madhan ravi on 24 Jul 2020
[X, Y] = meshgrid(1:5);
[X(:), Y(:)]

More Answers (1)

Alan Stevens
Alan Stevens on 24 Jul 2020
This will do it:
n = 5; reps = 4;
c1 = ones(n,1)*(1:reps); c1 = c1(:);
c2 = (ones(reps,1)*(1:n))'; c2=c2(:);
M = [c1 c2];
  3 Comments
Alan Stevens
Alan Stevens on 24 Jul 2020
Edited: Alan Stevens on 24 Jul 2020
You are right that there are probably easier ways to do it (use of meshgrid would indeed be better, but I just didn't think of it!)
The first column doesn't have a 5 in it because it wasn't clear to me that the op wanted the same number of repeats as grids.
alpedhuez
alpedhuez on 24 Jul 2020
Thank you any way.

Sign in to comment.

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!