理解为什么我不能在matlab中对矩阵的size函数结果使用索引

时间:2013-01-26 00:56:44

标签: matlab

尝试时:

a = [ 1 1 ; 1 1 ];
size(a)(1)

我得到了

Error: ()-indexing must appear last in an index
expression

我的理解是,尺寸(a)的结果是一个大小为1的矩阵。

问题:为什么尺寸(a)(1)不起作用?

Thabks。

1 个答案:

答案 0 :(得分:3)

因为你不能在没有创建临时函数的情况下索引像MATLAB那样的函数的结果。

temp = size(a);
temp(1)

会奏效。然而,通常还有其他方法可以获得您想要的东西。在您的示例中,您可以使用函数dim中的size(X,dim)参数:

size(a,1)

这样可以直接获得第一个维度的大小,从而无需创建临时变量。