MATLAB:表的函数未定义。我该如何解决这个问题?

时间:2017-11-25 23:55:24

标签: matlab linear-regression

我正在尝试创建一个简单的线性回归模型。 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)

1 个答案:

答案 0 :(得分:0)

使用索引对表进行切片时,在Matlab中,您获得另一个表,但行数或列数较少......所以在这部分代码中:

x1 .* x2

你试图将两张桌子相乘。

如果从工作区窗口打开T变量,您应该注意到该表为每列定义了一个标题名称,如Var1Var2,... {{1 (对应于您的第一个CSV行值,如果已定义,或者如上所述默认)。如果要使用表格的基础强类型向量,则必须调用:

VarN

假设您的T.VarX x1T.Var1x2T.Var2引用y对应:

T.Var3

这样,你甚至不需要切片。