R-square and the F statistic... error
6 次查看(过去 30 天)
显示 更早的评论
Hi everyone, I am getting this error for the each line (Warning: R-square and the F statistic are not well-defined unless X has a column of ones.).
I have looked up other similar questions but couldn't use the solutions for my case. Help if you can please. Thanks.
for r=1:size(Sun,1)
[~,~,~,~,STATNm(r,:)]=regress(Sun(r,:)',MHL(r,:)');
[~,~,~,~,STATNc(r,:)]=regress(Sun(r,:)',LComb(r,:)');
[~,~,~,~,STATSm(r,:)]=regress(Ssun(r,:)',Sm(r,:)');
[~,~,~,~,STATSc(r,:)]=regress(Ssun(r,:)',CLS2(r,:)');
[~,~,~,~,STATSml(r,:)]=regress(Nsun(r,:)',Nml(r,:)');
[~,~,~,~,STATSlc(r,:)]=regress(Nsun(r,:)',Nlc(r,:)');
end
Rsq=[STATNm(:,1) STATNc(:,1) STATSm(:,1) STATSc(:,1) STATSml(:,1) STATSlc(:,1)]';
0 个评论
采纳的回答
Walter Roberson
2022-5-3
MHL(r, :) is a row. You transpose it to a column and pass it as the second parameter to regress(). That is a column vector, not a 2d matrix.
As it only has one column, we can be sure that there is no trailing column of 1's. But having a column of 1's is needed for regression to work properly, since it is needed to estimate the constant term.
2 个评论
Walter Roberson
2022-5-4
Whether you put the ones as the first column or the second column does not matter, other than it will switch the order of the results, with the intercept going into whichever column has the ones.
更多回答(1 个)
Asliddin Komilov
2022-5-4
编辑:Asliddin Komilov
2022-5-4
3 个评论
Walter Roberson
2022-5-5
I do not think 0 itself is a problem, but I think you could have a problem if you you had duplicate rows. If that can happen then I would suggest using unique() by rows, recording the second output as well, and using that second output to index the rows of the other array, using that along with the first output of unique()
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!