为什么repmat(1,(1,10))在matlab中不起作用?

为什么repmat(1,(1,10))在matlab中不起作用?,matlab,Matlab,这是代码 >> a=ones(1,10); >> b=size(a); >> repmat(1,b) ans = 1 1 1 1 1 1 1 1 1 1 >> repmat(1,(1,10)) repmat(1,(1,10)) | Error: Expression or statement is incorrect--possibly

这是代码

>> a=ones(1,10);
>> b=size(a);
>> repmat(1,b)

ans =

     1     1     1     1     1     1     1     1     1     1

>> repmat(1,(1,10))
 repmat(1,(1,10))
            |
Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.

有人知道为什么吗?为什么会出现这样的错误?谢谢

Repmat用于创建一个包含源数组(A)的n个重复副本的数组。因此,第二个参数是定义第一个参数的副本数的单个标量

第二个参数可以使用向量,但它定义了结果在不同维度中的副本数。语法是:repmat(1,[110])

表达式
size(a)
返回
[110]
,而不是
(1,10)
。因此,等价物是:

repmat(1, [1 10]);
以下是一些有用的文档:


与示例代码完全等效的是
repmat(1,大小(1,10))
。或者,您可以使用
repmat(1[1,10])
,对于数组构造,您必须使用
[]
,圆括号
()
仅用于函数调用和索引。

第二个输入参数可以是向量。我创建了一个MATLAB聊天室,让我们讨论与MATLAB相关的事情,或者讨论范围超出了单个评论的限制。有时间来拜访我们吧-