我有一个包含4列实数的txt文件,如下所示
1 0 2 5
0 1 -6 2.5
-1 2 7 9
3 5 9 -2
ECC
每列需要是200x200矩阵。我应该阅读第一列的每个单独元素并将其放入矩阵200x200矩阵。因为它是文件,所以第二行中的元素(在示例中为0)成为矩阵的(1,2)元素或(2,1)是无关紧要的,因为该矩阵应该是对称的。
你能帮助我吗?
答案 0 :(得分:1)
您可以使用以下方法,在此示例中提取第一个矩阵:
data = load(<path to txt file>)
N = size(data,1);
mat1 = zeros(sqrt(N),sqrt(N));
mat1(:) = data(:,1);
通过使用以下内容,还可以将4个矩阵保留在单元格中:
data = load(<path to file>)
N = size(data,1);
matCell = cell(size(data,2),1);
for ii=1:length(matCell)
matCell{ii} = zeros(sqrt(N),sqrt(N));
matCell{ii}(:) = data(:,ii);
end
在这种情况下,您可以使用matCell {1}访问第一个200x200矩阵。