我有一个垫子文件,加载时会给我这样的东西:
火车0:[1200x300] 火车1:[1450x300]。. . . . . 火车N:[Nx300]
我想要做的是以像 train+"i" 这样的方式遍历每个矩阵,其中 i = 0 到 N,并创建一个值为 i 的 NX1 矩阵。这里 N 将是每个训练矩阵中的行数。
我有一个垫子文件,加载时会给我这样的东西:
火车0:[1200x300] 火车1:[1450x300]。. . . . . 火车N:[Nx300]
我想要做的是以像 train+"i" 这样的方式遍历每个矩阵,其中 i = 0 到 N,并创建一个值为 i 的 NX1 矩阵。这里 N 将是每个训练矩阵中的行数。
尝试将文件加载到结构中
ld = load(matfilename);
numRow = structfun( @(x) size(x,1), ld );
更复杂的方法可能是:
ld = load(matfilename);
matNames = fieldnames( ld );
numRows = zeros( 1, numel(matNames) );
for fi = 1:nueml(matNames)
tkn = regexp( matNames{fi}, '^train(\d+)$', 'tokens', 'once' );
ii = str2double( tkn{1} );
numRows(ii) = size( ld.(matNames{fi}), 1 );
end
无论如何,将 mat 文件加载到结构中允许您将所有加载的矩阵作为结构字段进行操作。