我想在现有矩阵中添加一个矢量。
示例:
matrix=[1 2 3
4 5 6
0 7 0]
vector = [7
8]
所以目标是找到相同数量的向量和矩阵,例如:
ismember(matrix,vector)
之后,矢量应插入矩阵中,如下所示:
matrix=[1 2 3
4 5 6
0 7 0
0 8 0]
答案 0 :(得分:4)
您可以更好地将find
与两个输出参数一起使用,而不是使用>> [row, col]=find(matrix==vector(1))
row =
3
col =
2
:
>> matrix(row:(row+length(vector)-1),col) = vector
matrix =
1 2 3
4 5 6
0 7 0
0 8 0
使用Matlab的自动矩阵扩展,并假设向量是列向量(您可以相应地调整代码):
row~=size(matrix,1)
如果匹配不在边缘(即{{1}}),这将无效,因为向量会覆盖其他条目。