ANOVAN: Undefined function or variable "denommat"
4 次查看(过去 30 天)
显示 更早的评论
Hi, I'm getting this error in ANOVAN: Undefined function or variable "denommat". I have 3 factors, one is a random effect (which individual), the others are predictors.
Y = randn(100,1);
subject = repmat([1:10]', 10,1);
traits = randn(100,2);
[p,T,stats] = anovan(Y, [subject, traits], ...
'varnames', {'Subject','Trait1', 'Trait2'} , ...
'random', 1, ...
'continuous', [2 3], ...
'model', [0 1 0; 0 0 1; 0 1 1] ...
);
- I'm looking for the effects of the predictors and their interaction.
- But it's a mixed effects design, in that, I have repeated measures of the traits for each subject. I've therefore specified 'Subject' as a random effect. What I intend here is to account for the fact that repeated trait measures on an individual may correlated.
- I think the problem is that the "subject" factor is not used in the design matrix: I've used a column of zeros to specify that the subject is not a categorical regressor (if it were, it would eat up all the between-subject variability, right?)
0 个评论
采纳的回答
Tom Lane
2013-1-25
I agree this looks like a bug where if you specify a variable as random but it doesn't actually appear in any terms, the code gets confused. The work-around in your case is not to specify the 'random' argument when no terms use it. I'll report this as a bug to be fixed.
But I don't understand the statement about how including subject in the model would eat up all the between-subject variability. The example doesn't show any between-subject factors. The following code introduces a between-subject factor and specifies that subject is nested in it. Perhaps you want something like this.
Y = randn(100,1);
subject = repmat([1:10]', 10,1);
traits = randn(100,2);
between = repmat([1 1 1 1 1 2 2 2 2 2]',10,1);
[p,T,stats] = anovan(Y, [subject, traits, between], ...
'varnames', {'Subject','Trait1', 'Trait2' 'Between'} , ...
'random', 1, ...
'continuous', [2 3], ...
'nested', [0 0 0 1;0 0 0 0;0 0 0 0;0 0 0 0], ...
'model', [0 0 0 1;1 0 0 0; 0 1 0 0; 0 0 1 0; 0 1 1 0] ...
);
0 个评论
更多回答(2 个)
Sachin Ganjare
2013-1-25
I think you do not have the file in your matlab path, wherein "denommat" function is defined.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Analysis of Variance and Covariance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!