【发布时间】:2015-04-27 16:02:05
【问题描述】:
我希望能在 MATLAB 中使用 cellfun 函数获得一些帮助。
假设我有一个包含 5 个 10x2 矩阵的单元格,即
C = {[10x2], [10x2]...,[10x2]}
但是,我想要一个新单元格,它在每个数组的两列中取前 5 行,即我想要
D = {[5x2], [5x2]...,[5x2]}
有没有办法在 Matlab 中使用cellfun 做到这一点?我试过做
D = cellfun(@(x) x(1:5),C,'UniformOutput',false)
但随后这返回了一个单元格,该单元格仅包含每个数组中仅第一列的前 5 行(并且也被转置),即我得到了
D = {[1x5], [1x5]...,[1x5]}
希望我解释得很好。
有人可以帮忙吗?我认为有一种简单的方法可以做到这一点,但我是cellfun 的新手。不过似乎很有用。也许还有一种我没有看到的更简单的方法?
【问题讨论】:
标签: matlab indexing analytics cell-array