MATLAB 中是否有该表达式的非迭代等价形式?
表达式为:
for i=1:n
X(:,i) = [P{i}(:)];
end
其中 X 是 DxN 矩阵,P 是元胞数组。
The expression is:
for i=1:n
X(:,i) = [P{i}(:)];
end
where X is a DxN matrix and P is a cell-array.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
当然,上面的解决方案只是为了好玩。我建议对这两种解决方案进行分析,并且仅在具有显着性能优势的情况下使用该解决方案。
可维护性和可读性也是编写代码时需要考虑的非常重要的因素。
Of course, the above solution is just for fun. I would recommend profiling both solutions and only using this one if it has a significant performance advantage.
Maintenance and readability are also very important factors to consider when writing code.
如果您通过
mat2cell
获取元胞数组,您可能希望将图像块排列到数组X
的列中。这可以使用命令 IM2COL 一步完成If you obtained the cell array via
mat2cell
, you may be wanting to arrange blocks of an image into the columns of an arrayX
. This can be achieved in a single step using the command IM2COL你也许可以逃脱:
然后某种 reshape() 到达你想要的地方。
You might be able to get away with:
Then some sort of reshape() to get to where you want to be.