Running anovan on a Large (21504Rx90C) matrix
5 views (last 30 days)
Show older comments
I am currently attempting to run a full anovan model on a 21504Rx90C matrix, which results in an out-of-memory error. I am doing this in order to extract the sum of squares contribution of each factor used in the anova model.
The anova model itself has 7 factors with 3,4,4,4,7,4,4 levels respectively. I was wondering if there was perhaps a way of breaking down the code to avoid running into this error and staying within the memory constraints?
Dummy code below:
Data = randn(21504,90)
SumSq = zeros(190,size(Data,2));
for iii = 1:size(Data,2)
[~,tbl,~,~] = anovan(Data(:,iii),{var1 var2 var3 var4 var5 var6 var7},...
'model','full',...
'varnames',{'var1','var2','var3','var4','var5','var6','var7'});
SumSq(1:end,iii) = cell2mat(tbl(2:end,2));
iii
end
4 Comments
Jeff Miller
on 9 Nov 2020
Edited: Jeff Miller
on 9 Nov 2020
Watch out for numerical problems, though.
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!