Can I replace the row of the matrix when its value is equal to the previous row?
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a following matrix as a sample/
A = [1 2 3; 4 5 6; 1 2 3; 1 2 3];
And I would like to replace the value of entire row if the row is equal to the previous row.
So in this case,
B = [1 2 3; 4 5 6; 1 2 3; 0 0 0]
Because the last row is equal to the 3rd row of the matrix.
Is there anyway I could do this?
Thank you.
0 个评论
采纳的回答
Atsushi Ueno
2021-12-5
A = [1 2 3; 4 5 6; 1 2 3; 1 2 3]
diff(A,1)
replace_row = [false; ~all(diff(A,1),2)]
A(replace_row, :) = 0
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multidimensional Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!