我创建了一个矩阵A并使用以下命令将其存储在名为MatrixA.txt的文件中
dlmwrite('MatrixA.txt',A);
现在我用的时候 B = csvread( 'MatrixA.txt',R,C);
其中r和c是矩阵所需的行和所需的cols我不能得到它因为它占据了矩阵的最后部分。 对于Ex ...如果我有 A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
我希望有 B = [1 2; 5 6]但是当我使用时 B = csvread( 'MatrixA.txt',2,2)
它给出了 B = [11 12; 15 16]
请帮帮我们......
答案 0 :(得分:0)
您应该使用:
B=csvread('MatrixA.txt',0,0,[0 0 1 1])
在致电csvread
时,您必须指定:
row
和column
(0-based
)[R1 C1 R2 C2]
其中(R1,C1)是要读取的数据的左上角,(R2,C2)是右下角此外,您可以阅读整个矩阵(供进一步使用),然后访问您需要的子矩阵:
B=csvread('MatrixA.txt')
start_row=1;
end_row=2;
start_column=1;
end_column=2;
B1=B(start_row:end_row,start_column:end_column)
此外,您可以指定一个步骤:
B=csvread('MatrixA.txt')
start_row=1;
end_row=4;
row_step=2;
start_column=1;
end_column=4;
column_step=2;
B2=B([start_row:row_step:end_row],[start_column:column_step:end_column])
作为替代方案,您可以使用dlmread
:
B=dlmread('MatrixA.txt',',',[0 0 1 1])
希望这有帮助。
Qapla'