# Counting the number of appearance of a value in a loop

4 Ansichten (letzte 30 Tage)
federico nutarelli am 6 Jul. 2022
Kommentiert: Walter Roberson am 6 Jul. 2022
Hi everyone,
I have the following matrix called all_indices_pesi in matlab:
consisting of the first column being a column of zeros and ones and the second column a column of indices which possibly repeat within the vector. Now my aim is the following:
1. I would like to count the number of times an index appear in column 2 (so for insstance how many times does the element 78818 appear in the second column? How many times doess 78824 appears? and so on...). Let's call it num_instances;
2. I would like to count the number of timess that a certain index in column 2 has a value of 1 in column 1. Let's call it num_ones;
3. I would like to see, for each unique element of column 2 the share "num_ones/num_instances" and project it into a 646x151 matrix in the places indicated by the unique indices in column 2
Thank you
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Walter Roberson am 6 Jul. 2022
Bearbeitet: Walter Roberson am 6 Jul. 2022
[G, value] = findgroups(all_indices_pesi(:,2));
count = accumarray(G, 1);
num_instances = table(value, count);
See findgroups documentation
##### 2 KommentareKeine anzeigenKeine ausblenden
federico nutarelli am 6 Jul. 2022
@Walter Roberson Thanks for the comment. How can I the wrap all up in a 646x151 matrix in the places sspecified by all_indices_pesi(:,2)? Thank you
Walter Roberson am 6 Jul. 2022
If the 151 corresponds to the number of different values that can appear in column 1, then
[G2, value2] = findgroups(all_indices_pesi(:,2));
[G1, value1] = findgroups(all_indices_pesi(:,1));
count = accumarray([G2, G1], 1);
row #J corresponds to column 2 value value2(J)
column #K corresponds to column 1 value value1(K)
So count(J,K) is the count for column 2 value value2(J) in combination with column 1 value value1(K)

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

R2021b

### Community Treasure Hunt

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

Start Hunting!

Translated by