【发布时间】:2014-03-03 01:33:16
【问题描述】:
可以使用cellfun 函数在 MATLAB 中将函数应用于元胞数组中的每个矩阵。例如,要确定元胞数组中每个矩阵的中位数,可以发出以下命令:
temp={[1;2;3;4;5] [6;7;8;9;10]}
cellfun(@median,temp)
ans =
3 8
如何将类似的操作应用于元胞数组的每个元胞内的矩阵的各个列(例如,每个元胞内矩阵的第一列)?对于以下元胞数组,将中值函数应用于每个元胞中矩阵的第一列所需的输出是3,9。
temp={[1 2;3 4;5 6] [7 8;9 10;11 12]}
如何编写提供这种输出的操作?最后,如何执行此操作,以便将每个单元格内矩阵第 N 列的输出存储在输出矩阵的第 N 列中?例如,在上面的简化示例中,3,9(矩阵第一列的中位数)将存储在输出矩阵的第一列中;同样,4,10(矩阵第二列的中位数)将存储在输出矩阵的第二列中。为方便起见,单元数组(输入)和所需的中值数组(输出)如下所示:
cell-1 cell-2
input = 1 2 7 8
3 4 9 10
5 6 11 12
output = 3 4
9 10
谢谢。
【问题讨论】:
标签: matlab