【发布时间】:2017-11-09 19:26:50
【问题描述】:
我有两个矩阵:
data = imported_data.data; % matrix from hdf5, 30x20000 single
filter = imported_data.invalid_flags == 0; % 30x20000 logical
我想合并来自这两个矩阵的信息,以便得到一个具有相同维度的新数据矩阵,并且将filter 的位置设置为0 设置为0 或NaN。这是一个小例子来澄清我的问题:
data = [3, 4, 5;
2, 3, 4];
filter = [0, 1, 1;
1, 0, 1];
valid_data = [0, 4, 5; % 'reset' values specified in filter
2, 0, 4];
我尝试了valid_data = data(filter);,但这导致了一个 400000x1 的单个矩阵。但是,我想要一个具有原始尺寸的矩阵valid_data。
是否有必要遍历所有值或有更快的解决方案?
【问题讨论】:
-
data和filter的尺寸是一样的,所以我不明白你的意思。