在 MATLAB 中使用 "cellfun" 函数重塑矩阵
Using "cellfun" function to reshape a matrix in MATLAB
左边是一个矩阵,其中包含 2 个单元格成员。每个成员都是一个 3 x 2 矩阵,其第一列包含 3 个单元成员,第二列包含 3 个阵列矩阵。
请看图:
那些"x"可以是任何东西。但是,我试图只选择显示的数字并按照正确矩阵中显示的方式组织它们。
你能帮我解决一下吗?
其中 C
是您的单元格矩阵,使用嵌套 cellfun
的解决方案:
cellfun(@(x)(cellfun(@(y)(y(2)),x(:,2))), C, 'Uni', false)
也许最好分解一下?
f1 = @(x)cellfun(f2, x(:,2))
f2 = @(y)(y(2))
cellfun(f1, C, 'Uni', false)
左边是一个矩阵,其中包含 2 个单元格成员。每个成员都是一个 3 x 2 矩阵,其第一列包含 3 个单元成员,第二列包含 3 个阵列矩阵。
请看图:
那些"x"可以是任何东西。但是,我试图只选择显示的数字并按照正确矩阵中显示的方式组织它们。
你能帮我解决一下吗?
其中 C
是您的单元格矩阵,使用嵌套 cellfun
的解决方案:
cellfun(@(x)(cellfun(@(y)(y(2)),x(:,2))), C, 'Uni', false)
也许最好分解一下?
f1 = @(x)cellfun(f2, x(:,2))
f2 = @(y)(y(2))
cellfun(f1, C, 'Uni', false)