在MATLAB中将向量分配给矩阵行

6

我有一个数组(向量)r = [2 4]和大小为50*2的report矩阵。我想将r放入report矩阵的第一行。 当我运行时:

with report(1)=r;

MATLAB返回这个错误:

??? 在赋值A(I) = B时,B和I中的元素数量必须相同。

我该如何解决这个错误?

2个回答

10
report(1,:)=r

你需要指定列。否则,report(1)是一个标量,r是一个向量,从而导致错误。


此答案将覆盖报告(1,:)中行1的当前值,如果想在现有行之前添加r的方法,可以使用user1319936的答案。 - Rune

4
除非我理解有误,您只是想将向量作为矩阵的第一行: report = [r; report]

@angainor的答案会覆盖报告(1,:)中线1的当前值,如果想在报告的现有行之前添加r,可以使用这个答案。请注意,随着表格变得越来越大,它所需的时间将成指数级增长,以防您想以此方式添加数千行! - Rune

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接