2

如果我有这个我得到一个错误

sum(vector) == cumsum(vector)(length(vector))

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

我知道我可以这样做:

Vec1 = cumsum(mat);
sum(mat) == Vec1(length(mat))

这将返回一个逻辑 1。

有没有其他方法可以将所有内容放在一条线上?

4

1 回答 1

2

好吧,如果你绝对决心在一行中做到这一点,

sum(vec) == subsref(cumsum(vec),struct('type','()','subs',{{numel(vec)}}))

但这是对 的边缘滥用subsref,通常用于重载自定义类中的下标运算符(即{}, ().

于 2013-10-02T19:47:39.427 回答