How do I vectorize this?
Show older comments
I'm not sure how to even ask this question without code... I am trying to create a 2d matrix of sums from grouping variables--I tried splitapply but that didnt seem to get me exactly what I want, which is a way to do what I show below:
n = 100;
X = randsample(1:9, n, true);
Y = randsample(15:20, n, true);
Z = rand(n, 1);
[ji, ~, jL] = grp2idx(X);
[di, ~, dL] = grp2idx(Y);
nJ = numel(jL);
nD = numel(dL);
Ts = zeros(nJ, nD);
for i=1:nJ
for j=1:nD
Ts(i,j) = sum(Z(ji==i&di==j));
end
end
Answers (0)
Categories
Find more on Tables in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!