如何使用二进制文件将矩阵导入犰狳?

How to import matrix into armadillo using binary files?

我正在尝试将在 MATLAB 中生成的矩阵导入犰狳。例如,我有一个 100x1 双倍矩阵“A”。我使用 Whosebug 上一个问题的信息使用 MATLAB 生成二进制文件:

% Generate LocalX.bin
name = 'LocalX.bin';
[F,err] = fopen(name,'w');
if F<0,error(err);end
fwrite(F,LocalX, 'int32');
fclose(F);

我使用以下方法将其导入犰狳:

arma::Mat<int> LocalX;
std::string localx = "LocalX.bin";
LocalX.load(localx, arma::arma_binary);

问题是,我丢失了矩阵维度,无法使用 aramdillo 对其执行任何矩阵操作。

如何在保持矩阵维度的同时将数据导入犰狳?

谢谢。

(第一次在Whosebug上提问)

如果您事先知道维度 (ROWS,COLS),您可以在 加载矩阵后添加 LocalX.reshape(ROWS,COLS)