【发布时间】:2017-05-29 16:53:27
【问题描述】:
我生成了一个 1x5 单元格的单元格数组,每个单元格上有一个 10x1 列向量。
如何找到所有列向量的平均值?所以要有一个包含均值的最终 10x1 新列向量。谢谢你
【问题讨论】:
-
请发布生成此元胞数组的代码。无论如何,在这种情况下,您应该远离单元格,只生成一个大小为 10x5 的数字数组,然后
mean(...,2)它。
标签: matlab mean cell-array
我生成了一个 1x5 单元格的单元格数组,每个单元格上有一个 10x1 列向量。
如何找到所有列向量的平均值?所以要有一个包含均值的最终 10x1 新列向量。谢谢你
【问题讨论】:
mean(...,2) 它。
标签: matlab mean cell-array
这是一个简单的解决方案:
mean([A{:}]) % column-wise mean (1x5)
mean([A{:}],2) % row-wise mean (10x1)
【讨论】:
我将沿第二维连接元胞数组内容(使用cat 和{:} 索引获取逗号分隔列表),然后沿第一维取平均值
result = mean(cat(2, data{:}));
由于您的数据是纯数字的,因此您应该避免使用元胞数组,而是处理 5 x 10 矩阵,因为这样的性能会更高。您可以像我们上面那样轻松地创建它。
matrix_data = cat(2, data{:});
【讨论】: