错误:'在作业A(:) = B中,A和B中的元素数必须相同'

时间:2015-12-10 13:03:40

标签: matlab

问题:TrajSimilarity是k个元素的结构,我想把TrajSimilarity(1,k).aLongestString的所有值放在向量/数组A中。我尝试使用这段代码但是它会产生错误,你能不能帮助我解决问题?

代码:

for k=1:14
    A(k)=TrajSimilarity(1,k).aLongestString;
    end

错误:

In an assignment  A(:) = B, the number of elements in A and B must
be the same

2 个答案:

答案 0 :(得分:2)

从字段名称footer { position:relative } 我假设您正在处理字符串。在matlab中没有真正的字符串数据类型,而是处理char数组,例如aLongestString的大小为hello

数组的每个元素只能包含一个标量,例如数字或字符,因此您无法在其中存储字符串。单元格数组可以在其单元格中保存任意数据,因此请尝试单元格数组:

[1 5]

答案 1 :(得分:-1)

TrajSimilarity(1,k).aLongestString

是两个向量的元素乘积,得到一个向量。你想把它放入A(k)这是一个标量。将代码更改为此代码:

A=TrajSimilarity(1,k).aLongestString;