为什么这个CAT操作中有单引号?

时间:2012-07-25 20:51:13

标签: matlab syntax matrix

在阅读别人的代码时,我发现了这个:

data = [data.a, data.b, data.c, ...
        data.x, data.y'];

为什么y之后会有单引号?它与数据类型有关吗?删除后我收到了这个错误:

??? Error using ==> horzcat
CAT arguments dimensions are not consistent.
有人可以解释一下吗?谢谢!

1 个答案:

答案 0 :(得分:1)

单引号是Matlab的transposition运算符。如果x是行向量,则x'是列向量,依此类推。

如果data.xdata.y都是行向量,那么您尝试水平连接data.xdata.y'是不成功的,这不是一个明确定义的操作,因为前者(我猜)是一个行向量而后者(如果我猜对了)是一个列向量。