groupcounts and sum of data in another array in the same order
조회 수: 5 (최근 30일)
이전 댓글 표시
I have a random signal sample and I have done cycle counting to extract the data that most influence calculation. The result of this cycle counting are 2 arrays, array A which consist of its range (2 x amplitude) and array B which consist of its occurrence (half cycle or full cycle). I want to do groupcounts that count the occurrence of ranges from array A and count the sum of its cycle from the result of the groupcounts.
Example:
A = [10, 11, 12, 10, 11, 12, 13, 11, 15, 10], B = [0.5, 1, 1, 0.5, 0.5, 0.5, 1, 1, 1, 0.5]
The goupcounts on array A will tell me how much do 10, 11, 12, 13, and 15 occured in array A. I want to count the sum of the cycle of each of this ranges (10, 11, 12, 13, and 15). How do I do that?
댓글 수: 1
Dyuman Joshi
2023년 12월 13일
편집: Dyuman Joshi
2023년 12월 13일
Do you mean like this?
A = [10, 11, 12, 10, 11, 12, 13, 11, 15, 10];
B = [0.5, 1, 1, 0.5, 0.5, 0.5, 1, 1, 1, 0.5]
[I, K] = findgroups(A)
S1 = accumarray(I.', A.')
S2 = accumarray(I.', B.')
Edit - Well, it seems I'm late to the party haha.
채택된 답변
Voss
2023년 12월 13일
A = [10, 11, 12, 10, 11, 12, 13, 11, 15, 10], B = [0.5, 1, 1, 0.5, 0.5, 0.5, 1, 1, 1, 0.5]
[counts,vals] = groupcounts(A(:))
sums = groupsummary(B(:),A(:),'sum')
댓글 수: 0
추가 답변 (2개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!