我有一个非常大的矩阵,其条目是一位数字的十进制数字(例如\ begin {bmatrix} 0.3&0.2&0.1 \ 0.1&0.6&0.8 \ 0.7&0.4&0.8 \ end {bmatrix})放在Latex的文本文件中。我的目标是将该矩阵转换为Scilab的Console。有什么捷径可做吗? (非常大的矩阵意味着最多有30行和6列)。
答案 0 :(得分:0)
首先将矩阵放入名为“ matrix”的文件中,然后删除\begin{bmatrix}
和\end{bmatrix}
条目。
因此,文件“矩阵”应类似于:
0.3 & 0.2 & 0.1 \ 0.1 & 0.6 & 0.8 \ 0.7 & 0.4 & 0.8
现在在scilab中执行以下代码:
mclose('all')
f=mopen('matrix');
matrix_car='M=[['
while ~(meof(f))
car = mgetstr(1, f);
if car == '&' then
matrix_car=matrix_car+',';
elseif car == '\' then
matrix_car=matrix_car+'];[';
elseif car ~= ascii(10) then
matrix_car=matrix_car+car;
end;
end;
matrix_car=matrix_car+']]'
execstr(matrix_car)
然后,您将获得一个名为M
的变量,其中包含适当的矩阵。