Hello,
I have an excel file something like this:
Type Value
Type A 100
Type A 500
Type B 1000
I use xlsread to import data to matlab and i get two data types:
double
100
500
1000
and cell
Type Value
Type A
Type A
Type B
I need to read the "column Type" and then sum the "column Value", if the type is the same . The goal is to get something like this and than export to excel:
Type Value
Type A 600
Type B 1000
Can you help me?
Thanks.
Joao Rosa

 채택된 답변

Fangjun Jiang
Fangjun Jiang 2011년 12월 10일

0 개 추천

Type={'Type A','Type A','Type B','Type C','Type C'}.';
Value=[100,500,1000,100,200].';
[UniType,Ind_i,Ind_j]=unique(Type);
SumValue=accumarray(Ind_j,Value)
xlswrite('test.xls',[UniType,num2cell(SumValue)]);
SumValue =
600
1000
300

추가 답변 (1개)

the cyclist
the cyclist 2011년 12월 10일

0 개 추천

You could use the ismember command on the first column of the cell, to find indices to each unique value.
Then, for each value, sum over its indices.
Then use xlswrite to write back to Excel.

카테고리

질문:

2011년 12월 10일

Community Treasure Hunt

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

Start Hunting!

Translated by