Summing over the same category within one column

Hi there,
I attached a rough sketch of my matrix to better describe the problem.
I have troubles summing over the same category within one column. I guess I would have to define that there are 14 categories first? I could also reshape every column in a loop? I am not sure how to proceed?
I am very grateful for help :)

댓글 수: 6

KSSV
KSSV 2017년 5월 8일
What is class of your matrix?
numeric double
Adam
Adam 2017년 5월 8일
Your screenshot isn't from Matlab so are you asking how to put your data in a matrix in the first place?
KSSV
KSSV 2017년 5월 8일
How cat1, cat2 etc strings present? What are those?
I already have the matrix in Matlab. I just wrote Category1, Cat2 etc. to illustrate the structure. In Matlab those are all numbers with a value betweeen 0 and 1.
Jan
Jan 2017년 5월 8일
The picture is not clear. What exactly does "Cat 1" mean? Where is which information stored and which data do you want to sum? Please use standard Matlab syntax to explain the input data.

댓글을 달려면 로그인하십시오.

 채택된 답변

Adam
Adam 2017년 5월 8일

1 개 추천

Something similar to this should work, although your matrix sizes don't correspond with your comments. You say you have a 3500*3500 matrix. If this is divided into 14 then it gives you 250 categories.
This is just off the top of my head so there may be errors, but it should give the idea. There are probably ways without for loops to by rearranging the data order first, but get the answer right before looking for faster solutions!
inputIdx = 1:14:3487;
for n = 1:250
outputIdx = ( 1:14 ) + ( n - 1 ) * 14;
outputMatrix( outputIdx, : ) = sum( inputMatrix( inputIdx + n, : ) );
end

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 MATLAB에 대해 자세히 알아보기

질문:

2017년 5월 8일

답변:

2017년 5월 8일

Community Treasure Hunt

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

Start Hunting!

Translated by