Using find command to group data into bins

6 visualizzazioni (ultimi 30 giorni)
Ivan Mich
Ivan Mich il 26 Lug 2021
Commentato: dpb il 26 Lug 2021
I have one ascii file with 2 columns (1st X and 2nd Y) .
I want to group the elements of X into bins (e.g. [2-4,4-6, etc) and I would like to group values of Y values based on the group of X values.
How could I use find command in order to make it?
Could you please help me?

Risposte (3)

Cris LaPierre
Cris LaPierre il 26 Lug 2021
I wouldn't try to use find. I would try to use discretize, findgroups, or histcounts (or maybe histcounts2) instead.

dpb
dpb il 26 Lug 2021
find is not the tool for this; see
grpstats or groupsummary or for more generality, findgroups combined with splitapply

Sulaymon Eshkabilov
Sulaymon Eshkabilov il 26 Lug 2021
If I have undersood your question correctly, in this case, find() is not quite efficient. Thus, you can better create just indxes, e.g.:
A1 = [X(2:4), Y(2:4)];
A2 = [X(4:6), Y(4:6)];
% OR:
XY=[X,Y];
B1 = XY(2:4,:);
B2 = XY(4:6,:);
  1 Commento
dpb
dpb il 26 Lug 2021
group the elements of X into bins (e.g. [2-4,4-6, etc)"
Raises the Q? of just precisely does this mean? I and Chris interpreted as grouping by the values of X whereas Sulaymon's A assumes just on the index order.

Accedi per commentare.

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by