hi,
i have cell array with strings and skalars name : 'hun.mat'
this is the cell:
hun= {'chocolate',40,'strawberry jam',50,'dulce de leche',45,'halva',60};
who contains the number of doughnuts that were made for each type of doughnuts .
I neet to Create a 4x2 cell array called ‘monitorData’ that includes in each row the name of the type of each doughnut type (string) (in the first column), and the percent of doughnuts that were bought from the total number that were made for each type (scalar) (in the second column).

답변 (1개)

per isakson
per isakson 2018년 12월 29일
편집: per isakson 2018년 12월 29일

0 개 추천

The first step
>> monitorData = permute( reshape( hun, 2,[] ), [2,1] );
>> monitorData
monitorData =
4×2 cell array
{'chocolate' } {[40]}
{'strawberry jam'} {[50]}
{'dulce de leche'} {[45]}
{'halva' } {[60]}
without comments and the final step
>> s = sum([monitorData{:,2}])
s =
195
>> monitorData(:,2) = cellfun( @(n) 100*n/s, monitorData(:,2), 'uni',false )
monitorData =
4×2 cell array
{'chocolate' } {[20.5128]}
{'strawberry jam'} {[25.6410]}
{'dulce de leche'} {[23.0769]}
{'halva' } {[30.7692]}

카테고리

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

제품

릴리스

R2016a

질문:

2018년 12월 29일

편집:

2018년 12월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by