如何在matlab中组合几个mat文件

时间:2016-10-13 16:07:25

标签: matlab

我有两个名为databaseA.mat和datalabelB.mat的mat文件,它们的大小不同,databaseA.mat是8100 x 80 double,datalabelB.mat是1 x 80 double。我需要将它们组合成一个mat文件,但不要改变它们的大小。实际上我已将它们与以下代码结合起来

ALoad = load( 'databaseA.mat' );
BLoad = load( 'datalabelB.mat' );
save( 'databaseAB.mat', 'ALoad' );
save( 'databaseAB.mat', 'BLoad', '-append' );

但结果是“struct”类型数据,而我不希望它。

我也在其他论坛上问过,他们建议使用以下

ALoad = load( 'databaseA.mat' );
BLoad = load( 'datalabelB.mat' );
a = ALoad.a;
b = BLoad.b;
save( 'databaseAB.mat', 'a', 'b' );

但它给了我一个错误

Reference to non-existent field 'a'.
Error in combineAB (line 8)
a = ALoad.a;
你可以纠正吗?谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

也许我错过了什么,你能不能做到:

ALoad = load( 'databaseA.mat' );
BLoad = load( 'datalabelB.mat' );
save( 'databaseAB.mat', 'ALoad', 'BLoad');

或者如果你想把它们组合起来:

ALoad = load( 'databaseA.mat' );
BLoad = load( 'datalabelB.mat' );
ABLoad = [ALoad;BLoad];
save( 'databaseAB.mat', 'ABLoad');