我有一个包含 12 列和 20000 行的单元格类型变量。我称之为总:
Atotal= [ATY1;ATY2;ATY3;ATY4;ATY5;ATY6;ATY7;ATY8;ATY9;ATY10;ATY11;ATY12;ATY13;ATY14;ATY15;ATY16;ATY17];
Atotal={ 972 1 0 0 0 0 0 21 60 118 60110 2001
973 0 0 1 0 0 0 15 46 1496 60110 2001
980 0 0 0 0 1 0 4 68 142 40502 2001
994 1 0 0 0 0 0 13 33 86 81101 2001
995 0 0 0 1 0 0 9 55 183 31201 2001
1024 1 0 0 0 0 0 10 26 3 80803 2001}
我从那里得到我的因变量和自变量:
Y1=cell2mat(Atotal(:,2));
X1=cell2mat(Atotal(:,3));
然后我对它们进行回归。考虑到我的因变量 Y1 是二进制的,而我的自变量 X1也是一个分类变量,我使用以下代码,但仍然不确定它是否正确。
mdl1 = fitlm(X1,Y1,'CategoricalVars',logical([1]));
然后我添加更多的假人并尝试相同的代码:
X2=cell2mat(Atotal(:,4));
X3=cell2mat(Atotal(:,5));
X4=cell2mat(Atotal(:,6));
X5=cell2mat(Atotal(:,7));
mdl2 = fitlm(X1,X2,X3,X4,X5,Y1,'CategoricalVars',logical([1,2,3,4,5]));
但现在它给了我很多错误:
Error using internal.stats.parseArgs (line 42)
Parameter name must be text.
Error in LinearModel.fit (line 849)
[intercept,predictorVars,responseVar,weights,exclude, ...
Error in fitlm (line 117)
model = LinearModel.fit(X,varargin{:});
有人可以帮助我吗?谢谢