creating a matrix from two sets of data

2 Ansichten (letzte 30 Tage)
Far mah
Far mah am 20 Nov. 2019
Kommentiert: Far mah am 20 Nov. 2019
Hello
Lets say, I have a row of numbers :x= [1 2 3 4]. I also have a column of numbers: y= [1;2]
I need to creat another matix from x, y comibation. so x is going to be paired with each y.
c =
1 1
2 1
3 1
4 1
1 2
2 2
3 2
4 2
Thank you !

Akzeptierte Antwort

Rik
Rik am 20 Nov. 2019
Bearbeitet: Rik am 20 Nov. 2019
You can use ndgrid to generate every combination.
[X, Y] =ndgrid(x, y);
out=[X(:) Y(:)];
  2 Kommentare
Erivelton Gualter
Erivelton Gualter am 20 Nov. 2019
Nicer and simpler version.
Far mah
Far mah am 20 Nov. 2019
Thanks !

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Erivelton Gualter
Erivelton Gualter am 20 Nov. 2019
Here is a possible solution:
x = [1 2 3 4];
y = [1;2];
nx = length(x);
c(1:nx,1) = x;
c(1:nx,2) = y(1);
c(nx+1:2*nx,1) = x';
c(nx+1:2*nx,2) = y(2);
For future questions, read this :
Show an attempt code as well.

Yasasvi Harish Kumar
Yasasvi Harish Kumar am 20 Nov. 2019
Hi,
This should help
for y = 1:2
for x = 1:4
c(4*(y-1)+x,1) = x
c(4*(y-1)+x,2) = y
end
end

Community Treasure Hunt

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

Start Hunting!

Translated by