我有一个3000x3000x70的矩阵,我将其一小部分与主矩阵分开进行处理。较小的矩阵为250x250x70。如何替换主矩阵中相同的索引?
这是我尝试过的:
combo_matrix = main_matrix(2750:end,2750:end,:)==small_matrix
感谢您的帮助!
答案 0 :(得分:1)
在您的问题中,您使用的是'==',但这是为了测试是否相等,而不是执行赋值。您可以将main_matrix
的副本创建为combo_matrix
,并通过以下方式替换块。请注意,由于要替换最后250个值,因此替换索引必须从2751开始,而不是2750。
% create matrices with random values for demonstration
main_matrix = rand(3000, 3000, 70);
small_matrix = rand(250, 250, 70);
% to create a copy of the original main_matrix:
combo_matrix = main_matrix;
combo_matrix(2751:end,2751:end,:) = small_matrix;
或通过以下方法覆盖原始main_matrix
中的值:
% to replace values in original main_matrix:
main_matrix(2751:end,2751:end,:) = small_matrix;