我正在尝试创建一个简单的线性回归模型。 a.csv包含8列。 Var1 month dow Hour is_holiday T load Date。我在X = 1时得到一个错误...它表示类型表的输入参数的未定义的执行时间。
T = readtable('a.csv')
x1 = T(:, 6);
x2 = T(:,3);
y = T(:,7);
X = [ones(size(x1)) x1 x2 x1.*x2];
b = regress(y,X)
答案 0 :(得分:0)
使用索引对表进行切片时,在Matlab中,您获得另一个表,但行数或列数较少......所以在这部分代码中:
x1 .* x2
你试图将两张桌子相乘。
如果从工作区窗口打开T
变量,您应该注意到该表为每列定义了一个标题名称,如Var1
,Var2
,... {{1 (对应于您的第一个CSV行值,如果已定义,或者如上所述默认)。如果要使用表格的基础强类型向量,则必须调用:
VarN
假设您的T.VarX
与x1
,T.Var1
对x2
和T.Var2
引用y
对应:
T.Var3
这样,你甚至不需要切片。