替换Julia中子矩阵中的值

时间:2014-12-01 10:29:07

标签: matlab julia

在将matlab代码转换为Julia时,是否有一种有效的编码方式,而不是我在下面所做的编码?特别是当parent_matrix的大小为2000X2000inner_matrix的大小为800X1时?

Matlab:

parent_matrix(inner_matrix(:),inner_matrix(:)) = replace_matrix;

朱莉娅:

ind_inner_vec=reshape(inner_matrix,size(inner_matrix)[1].*size(inner_matrix)[2],1)
z=1
for x in ind_inner_vec
    for y in ind_inner_vec
        parent_matrix[y,x]=replace_matrix[z]
        z=z+1
    end
end

1 个答案:

答案 0 :(得分:2)

如果我理解正确

parent_matrix[vec(inner_matrix),vec(inner_matrix)] = replace_matrix

会做你想要的。请注意,只需要vec,因为您说inner_matrix是一个列矩阵 - 如果它实际上是一个向量,则不需要它。