从 Unix 读取 .mat 文件 shell
Read .mat files from Unix shell
有没有办法从 UNIX 命令行读取 .mat 文件shell?
比如猫mymat.mat
?
我知道可以在 MATLAB 或 python 中加载它,但我的 atm 无法使用这些。
没有。 .mat 文件以二进制格式保存。您将无法从 UNIX shell.
解释它们的内容
GNU Octave 可能是一个选项,因为它可以免费安装。
假设您 运行 一个类似这样的会话并创建了两个数组 A 和 B:
octave:1> A = [ 1:3; 4:6; 7:9 ];
octave:2> B = [ 11:13; 14:16; 17:19 ];
octave:3> save -7 myfile.mat A B
然后,在 Octave 之外的 shell 中,您可以这样做以查看文件中变量的名称:
$ octave-cli <<< "who -file myfile.mat"
示例输出
Variables in the file myfile.mat:
A B
然后转储变量:
$ octave-cli <<< "load myfile.mat;A"
示例输出
A =
1 2 3
4 5 6
7 8 9
并且:
$ octave-cli <<< "load myfile.mat;B"
示例输出
B =
11 12 13
14 15 16
17 18 19
有没有办法从 UNIX 命令行读取 .mat 文件shell?
比如猫mymat.mat
?
我知道可以在 MATLAB 或 python 中加载它,但我的 atm 无法使用这些。
没有。 .mat 文件以二进制格式保存。您将无法从 UNIX shell.
解释它们的内容GNU Octave 可能是一个选项,因为它可以免费安装。
假设您 运行 一个类似这样的会话并创建了两个数组 A 和 B:
octave:1> A = [ 1:3; 4:6; 7:9 ];
octave:2> B = [ 11:13; 14:16; 17:19 ];
octave:3> save -7 myfile.mat A B
然后,在 Octave 之外的 shell 中,您可以这样做以查看文件中变量的名称:
$ octave-cli <<< "who -file myfile.mat"
示例输出
Variables in the file myfile.mat:
A B
然后转储变量:
$ octave-cli <<< "load myfile.mat;A"
示例输出
A =
1 2 3
4 5 6
7 8 9
并且:
$ octave-cli <<< "load myfile.mat;B"
示例输出
B =
11 12 13
14 15 16
17 18 19