如何解决"程序允许的最大变量大小超出错误"在MATLAB?

时间:2017-11-15 13:58:17

标签: matlab combinations

我正在使用这段代码来获取矩阵行的所有组合,因为我必须应用暴力。

function combinations(training)

S=dec2bin(1:2^size(training,1)-1)=='1';
allSubsets=cell(size(S,1),1);
for i=1:size(S,1)
    allSubsets{i}=training(S(i,:),:);
    display(allSubsets{i})

end
end

如果我在7个甚至20行的小矩阵上运行此功能,它可以完美地运行。但是一旦我将矩阵的大小增加到25,它就会给我这个错误。

  

内存不足。键入HELP MEMORY以获取选项。

     

dec2bin出错(第55行)   S = CHAR(REM(地板(d * POW2(1-MAX(N,E):0)),2)+' 0&#39);

     

组合错误(第11行)S = dec2bin(1:2 ^大小(训练,1)-1)==' 1&#39 ;;

此外,当我将行数增加到120时,它会出现以下错误:/

  

超出了程序允许的最大变量大小。   组合错误(第11行)S = dec2bin(1:2 ^大小(训练,1)-1)==' 1&#39 ;;

我必须在具有69列的2000行数据上运行它。请帮忙!!

0 个答案:

没有答案