matlab - 将两个 n 维元胞数组合并为一个 n × n 维元胞数组

标签 matlab cell-array

我想知道如何在 MATLAB 中执行此操作。

我有 a={1;2;3} 并想创建一个元胞数组

{{1,1};{1,2};{1,3};{2,1};{2,2};{2,3};{3,1};{3,2};{3,3}}.

如果没有 for 循环,我如何做到这一点?

最佳答案

您可以使用 allcomb from MATLAB File-exchange帮你解决这个问题 -

mat2cell(allcomb(a,a),ones(1,numel(a)^2),2)

关于matlab - 将两个 n 维元胞数组合并为一个 n × n 维元胞数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27571958/

相关文章:

arrays - 将元胞数组的内容作为单独的输入参数传递给 MATLAB 中的函数

matlab - matlab/octave 中结构内容和字段名的格式化打印

matlab - 在 MATLAB 中根据信号数据确定频率

algorithm - 优化算法计算 (sin(x)-x)*x^{-3} (在 matlab 中)

arrays - 在没有循环的情况下为每一行将矩阵的不同元素归零

arrays - 在不使用 MATLAB 循环的情况下通过元胞数组的一维连接子元胞

arrays - 如何在 Matlab 中将结构体的叶子作为向量返回?

matlab - 如何在 Matlab 中测试变量是否是函数句柄

Matlab:查找单元格中重复次数最多的值(修订版)

matlab - 如何将元胞数组附加到 .txt 文件?