automatically create a group of same elements from an array

8 Ansichten (letzte 30 Tage)
Surya Putra Kartolo
Surya Putra Kartolo am 29 Aug. 2018
Beantwortet: KL am 29 Aug. 2018
hello, i have a question about how to automatically group same elements of an array. Example: A=(3,3,3,2,1,4,5,5)
i want to group it into: Group1=(1) Group2=(2) Group3=(3,3,3) Group4=(4) Group5=(5,5)
but sometimes, the elements can be varied and it depends on the calculation. So the number of groups cannot be determined manually. So may i ask your idea, how to make the group automatically based on A ,using for loop?
  2 Kommentare
Geoff Hayes
Geoff Hayes am 29 Aug. 2018
Surya - please clarify what you mean by the elements can be varied and it depends on the calculation. Also, are you elements always integers?
Surya Putra Kartolo
Surya Putra Kartolo am 29 Aug. 2018
yeah, its always integers. i mean is that the integers in A can change depends on the calculation of the image. so sometimes A=(3,3,3,2,1,4,5,5), and if i do for other calculation A can be like A=(6,6,4,4,3,1,2,2). so the integers can be varied.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

KL
KL am 29 Aug. 2018
try this,
result =mat2cell(sort(A),1, histcounts(findgroups(A))) %A is your array
Output is a cell array where you have groups separated into columns.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by