How do I vectorize this?

2 vues (au cours des 30 derniers jours)
Walter
Walter le 29 Avr 2019
Commenté : Walter le 29 Avr 2019
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
  2 commentaires
Walter Roberson
Walter Roberson le 29 Avr 2019
accumarray looks appropriate
Walter
Walter le 29 Avr 2019
yup! That's it! thank you!

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Encryption / Cryptography dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by