在使用北太天元编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件,北太天元主要支持以下格式数据文件的导入导出:.mat、.txt、.csv、.xls、.xlsx。具体介绍及用法如下。
一、MAT文件的导入导出
1. MAT文件的导出
1.1 使用save函数
>> help save save 将工作区变量保存到文件中。 save(filename),将当前工作区中的所有变量存储在名为 filename 的二进制文件 MAT 文件中。 filename 为字符向量或字符串标量。例如,将文件名指定为 "myFile" 或 "myFile.mat"。 如果未指定文件名,则将数据保存到名为 baltamatica.mat 的文件中。 如果 filename 不包含扩展名,则会默认补充 '.mat' 扩展名。如果文件名不包含完整路径,则保存在当前文件夹中。 保存路径必须具有写入文件的权限。 当第一个参数为 '-struct' 时,会将 '-struct' 后的第二个参数 (非以 '-' 开头的参数) 当做 filename, 如 save('-struct',structname,filename,fieldnames)。 save(filename,variables),仅存储指定的变量。filename 和 variables 为字符向量或字符串标量。 variables 可使用 '*' 通配符匹配模式。例如,save('data.mat','A*') 保存以 A 开头的所有变量。 save(filename,'-struct',structname,fieldnames),将标量结构体的字段存储为单个变量。 如果使用了 fieldnames 参数,则 save 函数仅存储结构体中的 fieldnames 字段。 fieldnames 与 variables 具有相同的形式。不能在同一调用中指定 variables 和 '-struct' 来保存数据。
示例:保存structure数组实例。
例如有如下的structure数组s1:
s1.a = 22.33; s1.b =”Steve”; s1.c = ' World!';
使用 save 命令,可将整个structure数组保存为struct_data.mat。
>> save('struct_data.mat', 's1');
1.2 使用界面操作
在工作区中使用鼠标左键选中要保存的数据,点击鼠标右键,会弹出操作框,点击保存即可,在工作区空白处点击鼠标右键,可保存工作区的所有变量。
2.MAT文件的导入
2.1使用load函数
>> help load load 将文件变量加载到工作区中。 load(filename),将 MAT 文件中的变量加载到工作区。 filename 为字符向量或字符串标量。例如,将文件名指定为 "myFile" 或 "myFile.mat"。 如果未指定文件名,默认读取当前路径下的 baltamatica.mat。 load(filename,variables),读取指定的变量。filename 和 variables 为字符向量或字符串标量。 variables 可使用 '*' 通配符匹配模式。例如,load('data.mat','A*') 加载以 A 开头的所有变量。 load(filename,'-mat') 将 filename 视为 mat 文件,而不管文件扩展名如何。 load(filename,'-mat',variables) 加载 filename 文件中的指定变量。
示例:
将A.mat文件中的变量导入到structure数组s中。
>> s=load("A.mat") s = 1x1 struct 结构体: A1: [3x3 double] A2: "string" A3: [1x3 double] A4: [1x2 cell array]
2.2 使用界面操作
点击菜单栏的“导入“->”导入数据”
弹出导入文件操作界面
二、TXT、CSV及Excel文件的导入导出
1. TXT、CSV及Excel文件的导入
1.1 使用readmatrix函数
(1)导入文本文件
文本文件的数据格式在行和列上必须采取一致的模式,并使用分隔符来分隔各个数据项。分隔符可以是空格、逗号、分号或其他字符,单个的数据可以是字母、数值字符或它们的混合形式。
示例:文件data.txt包含了两行数据,各数据之间由空格分隔。
1 2 3
4 5 6
>> m=readmatrix("data.txt") %使用readmatrix导入数据 m = 2x3 double 1 2 3 4 5 6
(2)导入csv数据
csv文件是逗号分隔的纯文件文件。除了可以使用readmatrix函数读取之外,同时也可以使用csvread函数,推荐使用readmatrix函数。
示例:文件data.csv中的数据如下:
1.2,2.5,3.2,4.6
5.4,6.2,7.1,8.2
>> m=readmatrix("data.csv") %使用readmatrix导入数据 m = 2x4 double 1.2000 2.5000 3.2000 4.6000 5.4000 6.2000 7.1000 8.2000
(3)导入Excel数据
Excel文件包含.xls及.xlsx两类文件。
示例:文件data.xlsx中的数据如下:
>> m=readmatrix("data.xlsx") %使用readmatrix导入数据 m = 5x2 double 1.0000 2.0000 3.0000 4.0000 5.0000 6.0000 NaN NaN 7.0000 8.0000
1.2 使用界面操作
点击菜单栏的“导入“->”导入数据”,弹出导入文件操作界面,选择文件导入即可。
2. TXT、CSV及Excel文件的导出
2.1使用writematrix函数
(1)保存txt文本文件
示例:将a=[1,2,3;4,5,6;7,8,9]'所表示的矩阵数据存储到“w_data.txt”的文件当中,以制表符分隔。
>> a = 3x3 double 1 4 7 2 5 8 3 6 9 >> writematrix(a,"w_data.txt","Delimiter","-")
使用文本查看器查看w_data.txt:
(2)保存csv文本文件
示例:将a=[1,2,3;4,5,6;7,8,9]'所表示的矩阵数据存储到“w_data.csv”的文件当中。
>> writematrix(a,"w_data.csv")
使用wps查看器查看w_data.csv:
(3)保存xlsx文本文件
>> writematrix(a,"w_data.xlsx")
使用wps查看器查看w_data.xlsx:
注:暂不支持.xls文件格式的导出操作,excel推荐使用.xlsx的导出文件格式。
2.2 使用界面操作
在工作区中使用鼠标左键选中要保存的数据,点击鼠标右键,会弹出操作框,点击“导出变量”即可。该方式仅支持”.xlsx”格式文件的导出。
由于北太天元发布的开发的插件的SDK是使用GCC编译器生成的,不支持微软编译器的使用,在Windows平台下必须部署对应的 GCC 编译器开发环境才能开展 c/c++ 插件的开发工作。
我们可以采用基于MSYS2的MinGW-w64 GCC搭建Windows下C++开发环境。
MSYS2是仿Linux的终端交互环境,可以使用Linux下的终端命令和快捷方式,自带pacman软件管理包,让您将精力放到C++代码的编写上,而不是复杂的依赖环境的搭建和编译,可以复用自己在Linux下的开发经验。使用g++进行库的链接、源码编译等操作,可更进一步了解C++代码的编译过程。
绿色便携版本的 MSYS2 + MinGW64 开发环境包传送阵如下:
北太天元v3.6.1及其之前的软件版本可以使用以下绿色环境:
链接: https://pan.baidu.com/s/15KEJ_CZpEjNo_hQ7JIuAeQ
提取码: 5361
北太天元v3.6.0-dev(开发预览版)及其之后的软件正式或预览版本将使用以下绿色环境:
链接:https://pan.baidu.com/s/12eAGnIMv78ZzoY-G6aKUrw
提取码:oeil
将编译生成的插件拷贝至baltamatica安装路径下对应的插件位置后,即可使用CLion来进行调试。
1. windows系统
使用CLion调试代码的配置步骤
(1)点击CLion菜单栏中的“运行-编辑配置”
或
(2)配置插件的配置项:可执行文件及环境变量
可执行文件选择安装路径下的可执行文件如:
D:\baltamatica\lib\baltamatica.exe
将其中D:\baltamatica替换为自己的baltam安装路径。
环境变量配置如下:
Path中增加baltam安装路径的bin及lib:
D:\baltamatica\bin;D:\baltamatica\lib;
增加其他环境变量:
BALTAM_CONFIG_M=D:\baltamatica\config\config.m BALTAM_FRONTEND=D:\baltamatica\lib\libbaio_qt.dll BALTAM_GNUPLOT=D:\baltamatica\share\gnuplot\gnuplot.exe BALTAM_TABLE_FOR_FUNCTION=D:\baltamatica\config\table_for_function.csv QT_PLUGIN_PATH=D:\baltamatica\qtplugins BALTAM_PLUGIN_PATH=D:\baltamatica
点击确定。
(3)使用CLion的调试工具进行调试
2. Ubuntu系统
使用CLion调试代码的配置步骤
(1)点击CLion菜单栏中的“运行-编辑配置”
或
(2)配置baltam_builtin的配置项:可执行文件及环境变量
可执行文件选择安装路径下的可执行文件如:
/opt/Baltamatica/bin/baltamatica
将其中/opt/Baltamatica替换为自己的baltam安装路径。
环境变量配置如下:
Path中增加baltam安装路径的bin:
/opt/Baltamatica/bin
增加其他环境变量:
BALTAM_PATH=/opt/Baltamatica LD_LIBRARY_PATH=/opt/Baltamatica/lib BALTAM_CONFIG_M=/opt/Baltamatica/opt/Baltamatica/lib BALTAM_FRONTEND=/opt/Baltamatica/lib/libbaio_qt.so BALTAM_TABLE_FOR_FUNCTION=/opt/Baltamatica/config/table_for_function.csv QT_QPA_PLATFORM_PLUGIN_PATH=/opt/Baltamatica/lib/platforms BALTAM_PLUGIN_PATH=/opt/Baltamatica
点击确定。
(3)使用CLion的调试工具进行调试