Matlab:当每个单元格具有不同的行数和列数时,将二进制文件读入单元格
Posted
技术标签:
【中文标题】Matlab:当每个单元格具有不同的行数和列数时,将二进制文件读入单元格【英文标题】:Matlab: Reading Binary file into cells when each cell has a different number of rows and columns 【发布时间】:2014-05-23 09:30:10 【问题描述】:我有一个要读取的二进制文件。二进制文件中有 70 个变量的数值。 变量具有不同数量的列和行。一般来说,它们看起来像 X(n,1) 、 Y(n+2,1) 、 Z(n+2,m) 和 L(n,m)。
我的想法是将文件作为值向量读取,然后对其进行整形,但我认为我不能以简洁的方式对其进行整形,因为行数不是恒定的。
任何指导将不胜感激。谢谢。
【问题讨论】:
【参考方案1】:这是可能的。假设你已经阅读了你的向量:
X=1:17
%dimensions you want First cell 2x2, second cell 3x3, third cell 1x4:
dims=[2,2;3,3;1,4]
重塑
%get number of elements per cell
elements=prod(dims,2);
%split
F=mat2cell(X(:),elements)
%reshape each element
result=arrayfun(@(x)(reshape(Fx,dims(x,1),dims(x,2))),1:size(dims,1),'uni',false)
【讨论】:
以上是关于Matlab:当每个单元格具有不同的行数和列数时,将二进制文件读入单元格的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI:如何创建具有相同行数和列数的 LazyGrid?
可以决定 GridPane (JavaFX) 中的行数和列数