sorting skalars and string

1 次查看(过去 30 天)
Ariela Glikman
Ariela Glikman 2018-12-29
编辑: per isakson 2018-12-29
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
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]}

类别

Help CenterFile Exchange 中查找有关 Data Type Conversion 的更多信息

产品


版本

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by