for 1:x with unkonw x
Show older comments
Hi everybody,
i have an array like this:
ARRAY
X Y Z C
-3 4 5 1
5 6 2 2
4 4 9 1
6 6 7 2
4 6 2 3
9 9 7 3
where C goes from 1 to x (x unknow). I want to create a for to have x arrays with XYZ associated with C, like this:
for k=1:x
A(1:k)=[ARRAY(:,1),ARRAY(:,2),ARRAY(:,3),ARRAY(:,4)==1:k]
end
A1
X Y Z
-3 4 5
4 4 9
A2
X Y Z
5 6 2
6 6 7
A3
X Y Z
4 6 2
9 9 7
Thank you!
Accepted Answer
More Answers (1)
KSSV
on 7 Jan 2019
A = [-3 4 5 1
5 6 2 2
4 4 9 1
6 6 7 2
4 6 2 3
9 9 7 3 ] ;
C = A(:,end) ;
[c,ia,ib] = unique(C) ;
N = length(c) ;
iwant = cell(N,1) ;
for i = 1:N
iwant{i} = A(C==c(i),1:3) ;
end
Categories
Find more on Univariate Discrete Distributions in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!