Running anovan on a Large (21504Rx90C) matrix

5 Ansichten (letzte 30 Tage)
John Smith
John Smith am 6 Nov. 2020
Kommentiert: John Smith am 10 Nov. 2020
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 Kommentare
Jeff Miller
Jeff Miller am 9 Nov. 2020
Bearbeitet: Jeff Miller am 9 Nov. 2020
See chapter 9 of this book
Watch out for numerical problems, though.
John Smith
John Smith am 10 Nov. 2020
Thank you. I will try and implement this method and see if I have any luck.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by