dobee 发表于 2008-7-31 16:40

求助:关于利用MATLAB将cell矩阵转化为数值矩阵问题

小弟对样本数据进行处理,得到21*75000的矩阵,想做简化处理,变为一个21*60矩阵,现转化为了21*60的cell矩阵,每个cell均为1*625的数组,想将每个cell求值,可否执行?如何执行?辛苦高手做些指点!

sogooda 发表于 2008-7-31 16:55

不知道你要求啥值,看看这个函数有用没
cellfun

dobee 发表于 2008-7-31 17:20

回复 2楼 的帖子

想求其平均值或者求矩阵初等变换,谢谢指教

sogooda 发表于 2008-8-1 10:50

看看这个有用没有a={rand(3)}; %a是cell 数组
b=a{:};       %b是矩阵,一般的数组
>> class(a)
ans =
cell
>> class(b)
ans =
double

dobee 发表于 2008-8-1 15:33

回复 4楼 的帖子

感谢您的指点,不过“b=a{:};       %b是矩阵,一般的数组”应该是将元组数据又重新释放给矩阵,恢复为原矩阵。
小弟的目的是因为原矩阵样本较大,希望通过分为元组矩阵后减小矩阵的维度,形成一个新的数值矩阵。能否给些指点?

messenger 发表于 2008-8-1 17:20

回复 5楼 的帖子

你这个问题的一般的作法是将矩阵分块

rocwoods 发表于 2008-8-1 21:24

a = rand(21,75000);
b = mat2cell(a,ones(21,1),625*ones(1,75000/625));
value = cellfun(@mean,b);

dobee 发表于 2008-8-2 12:22

非常感谢大家的帮助,问题成功解决了!
页: [1]
查看完整版本: 求助:关于利用MATLAB将cell矩阵转化为数值矩阵问题