【问题标题】:Assigning a vector to a matrix row in MATLAB在 MATLAB 中将向量分配给矩阵行
【发布时间】:2012-10-14 14:00:16
【问题描述】:

我有大小为 50*2 的数组(向量)r =[2 4]report 矩阵。我想将r 放在report 矩阵的第1 行。 当我跑步时

with report(1)=r;

MATLAB 返回此错误:

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

我该如何解决这个错误?

【问题讨论】:

    标签: matlab


    【解决方案1】:
    report(1,:)=r
    

    您还需要指定列。否则report(1) 是一个标量,r 是一个向量,你会得到一个错误。

    【讨论】:

    • 此答案会覆盖报告(1,:) 中第 1 行中的当前值,作为在报告中现有行之前添加 r 的方法,您可以使用 user1319936 的答案。
    【解决方案2】:

    除非我遗漏了一些东西,否则您只想将向量作为矩阵的第一行:

    report = [r;report]

    【讨论】:

    • @angainor 的答案会覆盖报告(1,:) 中第 1 行中的当前值,以便在报告中的现有行之前添加 r,您可以使用此答案。请注意,随着表格变大,它比 angainor 的答案花费的时间要长得多,以防万一您想以这种方式添加数千行!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 2019-08-16
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多